public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Lou Langholtz <ldl@aros.net>
To: linux-kernel@vger.kernel.org, Andrew Morton <akpm@digeo.com>
Cc: viro@parcelfarce.linux.theplanet.co.uk
Subject: [PATCH] nbd driver for 2.5+: simply remove unneeded blksize_bits field
Date: Tue, 24 Jun 2003 08:19:48 -0600	[thread overview]
Message-ID: <3EF85E04.1090109@aros.net> (raw)

[-- Attachment #1: Type: text/plain, Size: 721 bytes --]

This fourth patch simply removes the blksize_bits field from the 
nbd_device struct and driver implementation. How this field made it into 
this driver to begin with is a mystery (where was Al Viro when that 
patch was submitted??). :-) This patch modifies both drivers/block/nbd.c 
and include/linux/nbd.h files. It's intended to be applied incrementally 
on top of my third patch (for enhanced diagnostics support). I suspect 
this patch is small enough however that it may apply correctly without 
the preceding patches but I have not tried it myself.

There are other things that can be cleaned up this way but this change 
was so very simple I wanted to get it out of the way early on. As 
always, comments welcome.

[-- Attachment #2: nbd-patch4 --]
[-- Type: text/plain, Size: 2483 bytes --]

diff -urN linux-2.5.73-p3.1/drivers/block/nbd.c linux-2.5.73-p4/drivers/block/nbd.c
--- linux-2.5.73-p3.1/drivers/block/nbd.c	2003-06-23 22:00:44.000000000 -0600
+++ linux-2.5.73-p4/drivers/block/nbd.c	2003-06-24 07:48:31.000000000 -0600
@@ -33,6 +33,8 @@
  *   from sending/receiving disk data. <ldl@aros.net>
  * 03-06-23 Cosmetic changes. <ldl@aros.net>
  * 03-06-23 Enhance diagnostics support. <ldl@aros.net>
+ * 03-06-24 Remove unneeded blksize_bits field from nbd_device struct.
+ *   <ldl@aros.net>
  *
  * possible FIXME: make set_sock / set_blksize / set_size / do_it one syscall
  * why not: would need verify_area and friends, would share yet another 
@@ -535,7 +537,7 @@
 		     unsigned int cmd, unsigned long arg)
 {
 	struct nbd_device *lo = inode->i_bdev->bd_disk->private_data;
-	int error, temp;
+	int error;
 	struct request sreq ;
 
 	/* Anyone capable of this syscall can do *real bad* things */
@@ -600,12 +602,6 @@
 		if ((arg & (arg-1)) || (arg < 512) || (arg > PAGE_SIZE))
 			return -EINVAL;
 		lo->blksize = arg;
-		temp = arg >> 9;
-		lo->blksize_bits = 9;
-		while (temp > 1) {
-			lo->blksize_bits++;
-			temp >>= 1;
-		}
 		lo->bytesize &= ~(lo->blksize-1); 
 		set_capacity(lo->disk, lo->bytesize >> 9);
 		return 0;
@@ -614,7 +610,7 @@
 		set_capacity(lo->disk, lo->bytesize >> 9);
 		return 0;
 	case NBD_SET_SIZE_BLOCKS:
-		lo->bytesize = ((u64) arg) << lo->blksize_bits;
+		lo->bytesize = ((u64) arg) * lo->blksize;
 		set_capacity(lo->disk, lo->bytesize >> 9);
 		return 0;
 	case NBD_DO_IT:
@@ -717,7 +713,6 @@
 		INIT_LIST_HEAD(&nbd_dev[i].queue_head);
 		init_MUTEX(&nbd_dev[i].tx_lock);
 		nbd_dev[i].blksize = 1024;
-		nbd_dev[i].blksize_bits = 10;
 		nbd_dev[i].bytesize = ((u64)0x7ffffc00) << 10; /* 2TB */
 		disk->major = NBD_MAJOR;
 		disk->first_minor = i;
diff -urN linux-2.5.73-p3.1/include/linux/nbd.h linux-2.5.73-p4/include/linux/nbd.h
--- linux-2.5.73-p3.1/include/linux/nbd.h	2003-06-22 10:51:33.000000000 -0600
+++ linux-2.5.73-p4/include/linux/nbd.h	2003-06-24 08:00:41.438099149 -0600
@@ -5,6 +5,8 @@
  * 2001 Copyright (C) Steven Whitehouse
  *            New nbd_end_request() for compatibility with new linux block
  *            layer code.
+ * 2003/06/24 Louis D. Langholtz <ldl@aros.net>
+ *            Removed unneeded blksize_bits field from nbd_device struct.
  */
 
 #ifndef LINUX_NBD_H
@@ -50,7 +52,6 @@
 	struct semaphore tx_lock;
 	struct gendisk *disk;
 	int blksize;
-	int blksize_bits;
 	u64 bytesize;
 };
 

                 reply	other threads:[~2003-06-24 14:05 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3EF85E04.1090109@aros.net \
    --to=ldl@aros.net \
    --cc=akpm@digeo.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=viro@parcelfarce.linux.theplanet.co.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox