History log of /haiku/src/add-ons/kernel/drivers/disk/scsi/scsi_cd/scsi_cd.h
Revision Date Author Comments
# 688acf41 15-Sep-2022 Jérôme Duval <jerome.duval@gmail.com>

add physical_block_size field where applicable

only scsi_disk checks the actual value, other drivers take the logical block size.

This change reports the physical block size from the disk rather than the block
size used by IDE/SATA/SCSI commands. On typical modern SATA disks, the SATA
commands will use 512 byte blocks, but the disk will actually read and write
4K blocks internally. This is only of importance for partition alignment for DriveSetup,
and is independant of file systems or partitioning systems. This could also influence
the recommended block size for some file systems.

Change-Id: Id0f2e22659e89fcef64c1f8d04f81cd68995e01f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5667
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# 8e8739eb 01-Jun-2010 Axel Dörfler <axeld@pinc-software.de>

* Try at solving bug #6036; similar to Linux, we now try to cut down the
capacity by trying to read at the end of the medium.
* Not tested at all yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36989 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e76856a4 26-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Enabled the IOCache depending on the amount of free pages. Currently the
limit is 180 MB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36495 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0715529b 26-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Renamed IOScheduler to IOSchedulerSimple and pulled an interface IOScheduler
out of it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36492 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 574e5742 23-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Optionally use the IOCache instead of the IOScheduler (specified by
USE_IO_CACHE macro in the header). Currently disabled, though. It works fine,
if the machine has a good deal of RAM. I tested with the anyboot CD -- the
boot and installation times drop dramatically. On machines with little RAM
there are issues, though. Apparently the cache isn't drained fast enough, so
that other allocations can fail.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36438 a95241bf-73f2-0310-859d-f6bbb57e9c96


# aa4ba93e 08-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Renamed src/system/kernel/device_manager/io_requests.{h,cpp} to
IORequest.{h,cpp}.
* Introduced public <io_requests.h> header. Currently it only declares the
single function BFS uses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29446 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 70e2d4ac 14-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Replaced the B_BLOCK_DEVICE_* defines with B_DMA_* defines that better match
our dma_restrictions structure (but we're using blocks instead of bytes,
since unlike the block size, the restrictions attributes are constant).
* We might want to use blocks for the dma_restrictions structure as well in
the future...
* Fixed another bug in the device_node variant of DMAResource::Init(): the max
segment size was specified in blocks as well.
* Removed the "hardcode" block_io module and header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26973 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 65f1e8ec 05-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Ported scsi_cd, too, still untested.
* This should have been part of r26828, although it did not break the build :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26829 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3736cb7d 31-May-2008 Axel Dörfler <axeld@pinc-software.de>

* Ported scsi_cd to the new driver architecture.
* Added legacy_sata and scsi_cd back to the image.
* Minor cleanup in scsi_disk.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25739 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 274b8a8c 07-Sep-2005 Jérôme Duval <korli@users.berlios.de>

cdrom devices are handled properly now


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14125 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 879d9c6b 12-May-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed the "blkman" module to "block_io".
Also renamed some defines and structures, although the structure and some other names are still odd.
This module should probably be moved into the kernel anyway, as it provides basic and crucial services.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12646 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e23fab9b 06-Jun-2004 Axel Dörfler <axeld@pinc-software.de>

Added scsi CD and disk drivers, written by Thomas Kurschel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7771 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8e8739eb3c59881308a38cce2dcf6fc3e91a768e 01-Jun-2010 Axel Dörfler <axeld@pinc-software.de>

* Try at solving bug #6036; similar to Linux, we now try to cut down the
capacity by trying to read at the end of the medium.
* Not tested at all yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36989 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e76856a4a5d2d03d6bf6bc21362de534a1e774a0 26-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Enabled the IOCache depending on the amount of free pages. Currently the
limit is 180 MB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36495 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0715529b59a3965beea04288a564458225d6f470 26-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Renamed IOScheduler to IOSchedulerSimple and pulled an interface IOScheduler
out of it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36492 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 574e5742ad3b11557f717e2bc18c042f00e338b3 23-Apr-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Optionally use the IOCache instead of the IOScheduler (specified by
USE_IO_CACHE macro in the header). Currently disabled, though. It works fine,
if the machine has a good deal of RAM. I tested with the anyboot CD -- the
boot and installation times drop dramatically. On machines with little RAM
there are issues, though. Apparently the cache isn't drained fast enough, so
that other allocations can fail.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36438 a95241bf-73f2-0310-859d-f6bbb57e9c96


# aa4ba93e25c1c63730ba69e04d3d96c3253924fd 08-Mar-2009 Ingo Weinhold <ingo_weinhold@gmx.de>

* Renamed src/system/kernel/device_manager/io_requests.{h,cpp} to
IORequest.{h,cpp}.
* Introduced public <io_requests.h> header. Currently it only declares the
single function BFS uses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29446 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 70e2d4ac43aa54d8c567ec12e6b24155d3171dd9 14-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Replaced the B_BLOCK_DEVICE_* defines with B_DMA_* defines that better match
our dma_restrictions structure (but we're using blocks instead of bytes,
since unlike the block size, the restrictions attributes are constant).
* We might want to use blocks for the dma_restrictions structure as well in
the future...
* Fixed another bug in the device_node variant of DMAResource::Init(): the max
segment size was specified in blocks as well.
* Removed the "hardcode" block_io module and header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26973 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 65f1e8eceb585263436db23748f6207bea0e3a3b 05-Aug-2008 Axel Dörfler <axeld@pinc-software.de>

* Ported scsi_cd, too, still untested.
* This should have been part of r26828, although it did not break the build :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26829 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3736cb7d04eaeea66d7d272c038de2d0fad52d06 31-May-2008 Axel Dörfler <axeld@pinc-software.de>

* Ported scsi_cd to the new driver architecture.
* Added legacy_sata and scsi_cd back to the image.
* Minor cleanup in scsi_disk.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25739 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 274b8a8cc9a05adfa7e6298c8e93834d119c89ec 07-Sep-2005 Jérôme Duval <korli@users.berlios.de>

cdrom devices are handled properly now


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14125 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 879d9c6b6e1326c1432ad9f1196c3cde682f660d 12-May-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed the "blkman" module to "block_io".
Also renamed some defines and structures, although the structure and some other names are still odd.
This module should probably be moved into the kernel anyway, as it provides basic and crucial services.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12646 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e23fab9bef5b39b13d6a1716e7dc05352ff726f4 06-Jun-2004 Axel Dörfler <axeld@pinc-software.de>

Added scsi CD and disk drivers, written by Thomas Kurschel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7771 a95241bf-73f2-0310-859d-f6bbb57e9c96