Skip to content

Commit b8bd6dc

Browse files
robbat2htejun
authored andcommitted
libata: disable a disk via libata.force params
A user on StackExchange had a failing SSD that's soldered directly onto the motherboard of his system. The BIOS does not give any option to disable it at all, so he can't just hide it from the OS via the BIOS. The old IDE layer had hdX=noprobe override for situations like this, but that was never ported to the libata layer. This patch implements a disable flag for libata.force. Example use: libata.force=2.0:disable [v2 of the patch, removed the nodisable flag per Tejun Heo] Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> Signed-off-by: Tejun Heo <tj@kernel.org> Cc: stable@vger.kernel.org Link: http://unix.stackexchange.com/questions/102648/how-to-tell-linux-kernel-3-0-to-completely-ignore-a-failing-disk Link: http://askubuntu.com/questions/352836/how-can-i-tell-linux-kernel-to-completely-ignore-a-disk-as-if-it-was-not-even-co Link: http://superuser.com/questions/599333/how-to-disable-kernel-probing-for-drive
1 parent 6fec887 commit b8bd6dc

File tree

2 files changed

+3
-0
lines changed

2 files changed

+3
-0
lines changed

Documentation/kernel-parameters.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1529,6 +1529,8 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
15291529

15301530
* atapi_dmadir: Enable ATAPI DMADIR bridge support
15311531

1532+
* disable: Disable this device.
1533+
15321534
If there are multiple matching configurations changing
15331535
the same attribute, the last one is used.
15341536

drivers/ata/libata-core.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6522,6 +6522,7 @@ static int __init ata_parse_force_one(char **cur,
65226522
{ "norst", .lflags = ATA_LFLAG_NO_HRST | ATA_LFLAG_NO_SRST },
65236523
{ "rstonce", .lflags = ATA_LFLAG_RST_ONCE },
65246524
{ "atapi_dmadir", .horkage_on = ATA_HORKAGE_ATAPI_DMADIR },
6525+
{ "disable", .horkage_on = ATA_HORKAGE_DISABLE },
65256526
};
65266527
char *start = *cur, *p = *cur;
65276528
char *id, *val, *endp;

0 commit comments

Comments
 (0)