[PATCH] check kmalloc return in ide-cd.c (244-ac16)

Rasmus Andersen (rasmus@jaquet.dk)
Fri, 25 May 2001 21:34:22 +0200


Hi.

This patch adds a check for the return value from kmalloc in
ide_cdrom_open. Applies against ac16.

--- linux-244-ac16-clean/drivers/ide/ide-cd.c Fri May 25 21:11:08 2001
+++ linux-244-ac16/drivers/ide/ide-cd.c Fri May 25 21:30:20 2001
@@ -2869,12 +2869,12 @@
int ide_cdrom_open (struct inode *ip, struct file *fp, ide_drive_t *drive)
{
struct cdrom_info *info = drive->driver_data;
- int rc;
+ int rc = -ENOMEM;

MOD_INC_USE_COUNT;
if (info->buffer == NULL)
info->buffer = (char *) kmalloc(SECTOR_BUFFER_SIZE, GFP_KERNEL);
- if ((rc = cdrom_fops.open(ip, fp))) {
+ if ((info->buffer == NULL) || (rc = cdrom_fops.open(ip, fp))) {
drive->usage--;
MOD_DEC_USE_COUNT;
}

-- 
Regards,
        Rasmus(rasmus@jaquet.dk)

The police are not here to create disorder. They're here to preserve disorder." -Former Chicago mayor Daley during the infamous 1968 Democratic Party convention - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/