Compile fixes for 2.5.1-pre4

From: Gertjan van Wingerde (gwingerde@home.nl)
Date: Fri Nov 30 2001 - 14:01:04 EST


Jens/Linux,

Please find attached a patch on 2.5.1-pre4 with compile fixes for:
        1. zftape code
        2. ISDN divert code
        3. Linear MD code
        4. RAID-0 MD code

        MvG/Best regards,

                Gertjan

diff -u --recursive linux-2.5.1-preX/drivers/char/ftape/zftape/zftape-init.c linux-2.5.x/drivers/char/ftape/zftape/zftape-init.c
--- linux-2.5.1-preX/drivers/char/ftape/zftape/zftape-init.c Fri Nov 30 19:31:00 2001
+++ linux-2.5.x/drivers/char/ftape/zftape/zftape-init.c Fri Nov 30 19:47:19 2001
@@ -114,7 +114,7 @@
         TRACE_FUN(ft_t_flow);
 
         TRACE(ft_t_flow, "called for minor %d", MINOR(ino->i_rdev));
- if ( test_and_set_bit(0,&busy_flag) )) {
+ if ( test_and_set_bit(0,&busy_flag) ) {
                 TRACE_ABORT(-EBUSY, ft_t_warn, "failed: already busy");
         }
         if ((MINOR(ino->i_rdev) & ~(ZFT_MINOR_OP_MASK | FTAPE_NO_REWIND))
diff -u --recursive linux-2.5.1-preX/drivers/isdn/divert/divert_procfs.c linux-2.5.x/drivers/isdn/divert/divert_procfs.c
--- linux-2.5.1-preX/drivers/isdn/divert/divert_procfs.c Fri Nov 30 19:31:02 2001
+++ linux-2.5.x/drivers/isdn/divert/divert_procfs.c Fri Nov 30 19:49:33 2001
@@ -58,7 +58,6 @@
         else
                 divert_info_tail->next = ib; /* follows existing messages */
         divert_info_tail = ib; /* new tail */
- restore_flags(flags);
 
         /* delete old entrys */
         while (divert_info_head->next) {
@@ -70,7 +69,7 @@
                 } else
                         break;
         } /* divert_info_head->next */
- spin_lock_irqrestore( &divert_info_lock, flags );
+ spin_unlock_irqrestore( &divert_info_lock, flags );
         wake_up_interruptible(&(rd_queue));
 } /* put_info_buffer */
 
@@ -163,14 +162,13 @@
                 inf->usage_cnt--;
                 inf = inf->next;
         }
- restore_flags(flags);
         if (if_used <= 0)
                 while (divert_info_head) {
                         inf = divert_info_head;
                         divert_info_head = divert_info_head->next;
                         kfree(inf);
                 }
- spin_unlock_irq( &divert_info_lock, flags );
+ spin_unlock_irqrestore( &divert_info_lock, flags );
         return (0);
 } /* isdn_divert_close */
 
diff -u --recursive linux-2.5.1-preX/drivers/md/linear.c linux-2.5.x/drivers/md/linear.c
--- linux-2.5.1-preX/drivers/md/linear.c Sun Sep 30 21:26:06 2001
+++ linux-2.5.x/drivers/md/linear.c Wed Nov 28 21:18:02 2001
@@ -119,22 +119,21 @@
         return 0;
 }
 
-static int linear_make_request (mddev_t *mddev,
- int rw, struct buffer_head * bh)
+static int linear_make_request (mddev_t *mddev, int rw, struct bio *bio)
 {
         linear_conf_t *conf = mddev_to_conf(mddev);
         struct linear_hash *hash;
         dev_info_t *tmp_dev;
         long block;
 
- block = bh->b_rsector >> 1;
+ block = bio->bi_sector >> 1;
         hash = conf->hash_table + (block / conf->smallest->size);
   
         if (block >= (hash->dev0->size + hash->dev0->offset)) {
                 if (!hash->dev1) {
                         printk ("linear_make_request : hash->dev1==NULL for block %ld\n",
                                                 block);
- buffer_IO_error(bh);
+ bio_io_error(bio);
                         return 0;
                 }
                 tmp_dev = hash->dev1;
@@ -144,11 +143,11 @@
         if (block >= (tmp_dev->size + tmp_dev->offset)
                                 || block < tmp_dev->offset) {
                 printk ("linear_make_request: Block %ld out of bounds on dev %s size %ld offset %ld\n", block, kdevname(tmp_dev->dev), tmp_dev->size, tmp_dev->offset);
- buffer_IO_error(bh);
+ bio_io_error(bio);
                 return 0;
         }
- bh->b_rdev = tmp_dev->dev;
- bh->b_rsector = bh->b_rsector - (tmp_dev->offset << 1);
+ bio->bi_dev = tmp_dev->dev;
+ bio->bi_sector = bio->bi_sector - (tmp_dev->offset << 1);
 
         return 1;
 }
diff -u --recursive linux-2.5.1-preX/drivers/md/raid0.c linux-2.5.x/drivers/md/raid0.c
--- linux-2.5.1-preX/drivers/md/raid0.c Sun Sep 30 21:26:06 2001
+++ linux-2.5.x/drivers/md/raid0.c Thu Nov 29 19:27:53 2001
@@ -223,8 +223,7 @@
  * Of course, those facts may not be valid anymore (and surely won't...)
  * Hey guys, there's some work out there ;-)
  */
-static int raid0_make_request (mddev_t *mddev,
- int rw, struct buffer_head * bh)
+static int raid0_make_request (mddev_t *mddev, int rw, struct bio *bio)
 {
         unsigned int sect_in_chunk, chunksize_bits, chunk_size;
         raid0_conf_t *conf = mddev_to_conf(mddev);
@@ -235,11 +234,11 @@
 
         chunk_size = mddev->param.chunk_size >> 10;
         chunksize_bits = ffz(~chunk_size);
- block = bh->b_rsector >> 1;
+ block = bio->bi_sector >> 1;
         hash = conf->hash_table + block / conf->smallest->size;
 
         /* Sanity check */
- if (chunk_size < (block % chunk_size) + (bh->b_size >> 10))
+ if (chunk_size < (block % chunk_size) + (bio->bi_size >> 10))
                 goto bad_map;
  
         if (!hash)
@@ -255,7 +254,7 @@
         } else
                 zone = hash->zone0;
     
- sect_in_chunk = bh->b_rsector & ((chunk_size<<1) -1);
+ sect_in_chunk = bio->bi_sector & ((chunk_size<<1) -1);
         chunk = (block - zone->zone_offset) / (zone->nb_dev << chunksize_bits);
         tmp_dev = zone->dev[(block >> chunksize_bits) % zone->nb_dev];
         rsect = (((chunk << chunksize_bits) + zone->dev_offset)<<1)
@@ -265,8 +264,8 @@
          * The new BH_Lock semantics in ll_rw_blk.c guarantee that this
          * is the only IO operation happening on this bh.
          */
- bh->b_rdev = tmp_dev->dev;
- bh->b_rsector = rsect;
+ bio->bi_dev = tmp_dev->dev;
+ bio->bi_sector = rsect;
 
         /*
          * Let the main block layer submit the IO and resolve recursion:
@@ -274,7 +273,7 @@
         return 1;
 
 bad_map:
- printk ("raid0_make_request bug: can't convert block across chunks or bigger than %dk %ld %d\n", chunk_size, bh->b_rsector, bh->b_size >> 10);
+ printk ("raid0_make_request bug: can't convert block across chunks or bigger than %dk %ld %d\n", chunk_size, bio->bi_sector, bio->bi_size >> 10);
         goto outerr;
 bad_hash:
         printk("raid0_make_request bug: hash==NULL for block %ld\n", block);
@@ -285,7 +284,7 @@
 bad_zone1:
         printk ("raid0_make_request bug: hash->zone1==NULL for block %ld\n", block);
  outerr:
- buffer_IO_error(bh);
+ bio_io_error(bio);
         return 0;
 }
                            

-
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/



This archive was generated by hypermail 2b29 : Fri Nov 30 2001 - 21:00:40 EST