448 case KControlIoCacheCount: |
448 case KControlIoCacheCount: |
449 { |
449 { |
450 TIOCacheValues cacheValues; |
450 TIOCacheValues cacheValues; |
451 cacheValues.iCloseCount= RequestAllocator::CloseCount(); |
451 cacheValues.iCloseCount= RequestAllocator::CloseCount(); |
452 cacheValues.iFreeCount= RequestAllocator::FreeCount(); |
452 cacheValues.iFreeCount= RequestAllocator::FreeCount(); |
453 cacheValues.iAllocated= RequestAllocator::AllocatedCount(); |
453 cacheValues.iAllocated= 0; // no longer used |
454 cacheValues.iTotalCount= RequestAllocator::TotalCount(); |
454 cacheValues.iTotalCount= RequestAllocator::RequestCount(); |
|
455 cacheValues.iRequestCountPeak = RequestAllocator::RequestCountPeak(); |
|
456 |
|
457 cacheValues.iOpFreeCount= OperationAllocator::FreeCount(); |
|
458 cacheValues.iOpRequestCount= OperationAllocator::RequestCount(); |
|
459 cacheValues.iOpRequestCountPeak = OperationAllocator::RequestCountPeak(); |
|
460 |
|
461 |
455 TPckgBuf<TIOCacheValues> pkgBuf(cacheValues); |
462 TPckgBuf<TIOCacheValues> pkgBuf(cacheValues); |
456 |
463 |
457 // ensure we only write what the client buffer can hold - |
464 // ensure we only write what the client buffer can hold - |
458 // this allows TIOCacheValues to increase in size without breaking BC |
465 // this allows TIOCacheValues to increase in size without breaking BC |
459 pkgBuf.SetLength(Min(pkgBuf.MaxLength(), aRequest->Message().GetDesMaxLengthL(2))); |
466 pkgBuf.SetLength(Min(pkgBuf.MaxLength(), aRequest->Message().GetDesMaxLengthL(2))); |
577 case KControlIoEnableFatUtilityFunctions: |
584 case KControlIoEnableFatUtilityFunctions: |
578 { |
585 { |
579 EnableFatUtilityFunctions = ETrue; |
586 EnableFatUtilityFunctions = ETrue; |
580 return KErrNone; |
587 return KErrNone; |
581 } |
588 } |
|
589 case KControlIoSessionCount: |
|
590 { |
|
591 TPckgBuf<TInt> pkgBuf(SessionCount); |
|
592 TInt r=aRequest->Write(2,pkgBuf); |
|
593 return r; |
|
594 } |
|
595 case KControlIoObjectCount: |
|
596 { |
|
597 TPckgBuf<TInt> pkgBuf(ObjectCount); |
|
598 TInt r=aRequest->Write(2,pkgBuf); |
|
599 return r; |
|
600 } |
|
601 |
582 } |
602 } |
583 #endif |
603 #endif |
584 |
604 |
585 return(aRequest->Drive()->ControlIO(aRequest->Message(),command,param1,param2)); |
605 return(aRequest->Drive()->ControlIO(aRequest->Message(),command,param1,param2)); |
586 } |
606 } |