Re: [PATCH] Fix incorrect Mt Rainier detection

From: Jens Axboe
Date: Tue Oct 26 2004 - 01:36:57 EST


On Mon, Oct 25 2004, Peter Osterlund wrote:
> cdrom_is_mrw() can incorrectly think that a drive is Mt Rainier
> capable, because if forgets to check if the "GET CONFIGURATION"
> command returns the MRW feature number. According to the MMC spec,
> the drive shall return all feature numbers >= the starting feature
> number, so even if the drive doesn't support Mt Rainier, it can return
> some data that makes cdrom_is_mrw() incorrectly think the drive is MRW
> capable.
>
> This problem stops me from mounting DVD+RW discs in R/W mode on my
> laptop, because it makes cdrom_open_write() call
> cdrom_mrw_open_write() which fails because the drive isn't really MRW
> capable.
>
> The fix is to make sure the returned feature number is the correct one
> for Mt Rainier.
>
> Signed-off-by: Peter Osterlund <petero2@xxxxxxxxx>

Acked-by: Jens Axboe <axboe@xxxxxxx>

> ---
>
> linux-petero/drivers/cdrom/cdrom.c | 2 ++
> 1 files changed, 2 insertions(+)
>
> diff -puN drivers/cdrom/cdrom.c~mrw-fix drivers/cdrom/cdrom.c
> --- linux/drivers/cdrom/cdrom.c~mrw-fix 2004-10-25 22:43:15.711347640 +0200
> +++ linux-petero/drivers/cdrom/cdrom.c 2004-10-25 22:43:15.716346880 +0200
> @@ -546,6 +546,8 @@ int cdrom_is_mrw(struct cdrom_device_inf
> return ret;
>
> mfd = (struct mrw_feature_desc *)&buffer[sizeof(struct feature_header)];
> + if (be16_to_cpu(mfd->feature_code) != CDF_MRW)
> + return 1;
> *write = mfd->write;
>
> if ((ret = cdrom_mrw_probe_pc(cdi))) {
> _
>
> --
> Peter Osterlund - petero2@xxxxxxxxx
> http://w1.894.telia.com/~u89404340
>

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/