#ifdef DEBUG_SIGNALS_MAPS
-#define MAPS_LINE_FORMAT "%08lx-%08lx %s %08lx %s %lu "
+#define MAPS_LINE_FORMAT "%08lx-%08lx %s %08lx %02x:%02x %lu "
static inline void read_maps (void)
{
char *line;
char str[5], *cp = str;
int flags;
- kdev_t dev;
+ dev_t dev;
unsigned long ino;
/*
buffer, PAGE_SIZE);
}
printk(MAPS_LINE_FORMAT, map->vm_start, map->vm_end, str, map->vm_pgoff << PAGE_SHIFT,
- kdevname(dev), ino);
+ MAJOR(dev), MINOR(dev), ino);
if (map->vm_file != NULL)
printk("%s\n", line);
else
#ifdef DEBUG_SIGNALS_MAPS
-#define MAPS_LINE_FORMAT "%016lx-%016lx %s %016lx %s %lu "
+#define MAPS_LINE_FORMAT "%016lx-%016lx %s %016lx %02x:%02x %lu "
static inline void read_maps (void)
{
char *line;
char str[5], *cp = str;
int flags;
- kdev_t dev;
+ dev_t dev;
unsigned long ino;
/*
buffer, PAGE_SIZE);
}
printk(MAPS_LINE_FORMAT, map->vm_start, map->vm_end, str, map->vm_pgoff << PAGE_SHIFT,
- kdevname(dev), ino);
+ MAJOR(dev), MINOR(dev), ino);
if (map->vm_file != NULL)
printk("%s\n", line);
else
#ifdef DEBUG_SIGNALS_MAPS
-#define MAPS_LINE_FORMAT "%016lx-%016lx %s %016lx %s %lu "
+#define MAPS_LINE_FORMAT "%016lx-%016lx %s %016lx %02x:%02x %lu "
static inline void read_maps (void)
{
char *line;
char str[5], *cp = str;
int flags;
- kdev_t dev;
+ dev_t dev;
unsigned long ino;
/*
buffer, PAGE_SIZE);
}
printk(MAPS_LINE_FORMAT, map->vm_start, map->vm_end, str, map->vm_pgoff << PAGE_SHIFT,
- kdevname(dev), ino);
+ MAJOR(dev), MINOR(dev), ino);
if (map->vm_file != NULL)
printk("%s\n", line);
else
new_bdev->bd_inode = inode;
inode->i_mode = S_IFBLK;
inode->i_rdev = kdev;
- inode->i_dev = kdev;
inode->i_bdev = new_bdev;
inode->i_data.a_ops = &def_blk_aops;
inode->i_data.gfp_mask = GFP_USER;
struct address_space * const mapping = &inode->i_data;
inode->i_sb = sb;
- inode->i_dev = to_kdev_t(sb->s_dev);
+ inode->i_dev = sb->s_dev;
inode->i_blkbits = sb->s_blocksize_bits;
inode->i_flags = 0;
atomic_set(&inode->i_count, 1);
? (fl->fl_type & F_UNLCK) ? "UNLCK" : "READ "
: (fl->fl_type & F_WRLCK) ? "WRITE" : "READ ");
}
+ /*
+ * NOTE: it should be inode->i_sb->s_id, not kdevname(...).
+ */
out += sprintf(out, "%d %s:%ld ",
fl->fl_pid,
- inode ? kdevname(inode->i_dev) : "<none>",
+ inode ? kdevname(to_kdev_t(inode->i_dev)) : "<none>",
inode ? inode->i_ino : 0);
out += sprintf(out, "%Ld ", fl->fl_start);
if (fl->fl_end == OFFSET_MAX)
&& (fhp->fh_export->ex_flags & NFSEXP_FSID))
p = xdr_encode_hyper(p, (u64) fhp->fh_export->ex_fsid);
else
- p = xdr_encode_hyper(p, (u64) kdev_t_to_nr(inode->i_dev));
+ p = xdr_encode_hyper(p, (u64) inode->i_dev);
p = xdr_encode_hyper(p, (u64) inode->i_ino);
p = encode_time3(p, fhp->fh_post_atime);
p = encode_time3(p, fhp->fh_post_mtime);
struct raparms *p_next;
unsigned int p_count;
ino_t p_ino;
- kdev_t p_dev;
+ dev_t p_dev;
struct file_ra_state p_ra;
};
static spinlock_t ra_lock = SPIN_LOCK_UNLOCKED;
static inline struct raparms *
-nfsd_get_raparms(kdev_t dev, ino_t ino)
+nfsd_get_raparms(dev_t dev, ino_t ino)
{
struct raparms *ra, **rap, **frap = NULL;
int depth = 0;
spin_lock(&ra_lock);
for (rap = &raparm_cache; (ra = *rap); rap = &ra->p_next) {
- if (ra->p_ino == ino && kdev_same(ra->p_dev, dev))
+ if (ra->p_ino == ino && ra->p_dev == dev)
goto found;
depth++;
if (ra->p_count == 0)
}
if (err >= 0 && stable) {
- static unsigned long last_ino;
- static kdev_t last_dev = NODEV;
+ static ino_t last_ino;
+ static dev_t last_dev = 0;
/*
* Gathered writes: If another process is currently
*/
if (EX_WGATHER(exp)) {
if (atomic_read(&inode->i_writecount) > 1
- || (last_ino == inode->i_ino && kdev_same(last_dev, inode->i_dev))) {
+ || (last_ino == inode->i_ino && last_dev == inode->i_dev)) {
dprintk("nfsd: write defer %d\n", current->pid);
set_current_state(TASK_UNINTERRUPTIBLE);
schedule_timeout((HZ+99)/100);
* + (index into the line)
*/
/* for systems with sizeof(void*) == 4: */
-#define MAPS_LINE_FORMAT4 "%08lx-%08lx %s %08lx %s %lu"
+#define MAPS_LINE_FORMAT4 "%08lx-%08lx %s %08lx %02x:%02x %lu"
#define MAPS_LINE_MAX4 49 /* sum of 8 1 8 1 4 1 8 1 5 1 10 1 */
/* for systems with sizeof(void*) == 8: */
-#define MAPS_LINE_FORMAT8 "%016lx-%016lx %s %016lx %s %lu"
+#define MAPS_LINE_FORMAT8 "%016lx-%016lx %s %016lx %02x:%02x %lu"
#define MAPS_LINE_MAX8 73 /* sum of 16 1 16 1 4 1 16 1 5 1 10 1 */
#define MAPS_LINE_FORMAT (sizeof(void*) == 4 ? MAPS_LINE_FORMAT4 : MAPS_LINE_FORMAT8)
char *line;
char str[5];
int flags;
- kdev_t dev;
+ dev_t dev;
unsigned long ino;
int len;
str[3] = flags & VM_MAYSHARE ? 's' : 'p';
str[4] = 0;
- dev = NODEV;
+ dev = 0;
ino = 0;
if (map->vm_file != NULL) {
dev = map->vm_file->f_dentry->d_inode->i_dev;
len = sprintf(line,
MAPS_LINE_FORMAT,
map->vm_start, map->vm_end, str, map->vm_pgoff << PAGE_SHIFT,
- kdevname(dev), ino);
+ MAJOR(dev), MINOR(dev), ino);
if(map->vm_file) {
int i;
void generic_fillattr(struct inode *inode, struct kstat *stat)
{
- stat->dev = kdev_t_to_nr(inode->i_dev);
+ stat->dev = inode->i_dev;
stat->ino = inode->i_ino;
stat->mode = inode->i_mode;
stat->nlink = inode->i_nlink;
struct list_head i_dentry;
unsigned long i_ino;
atomic_t i_count;
- kdev_t i_dev;
+ dev_t i_dev;
umode_t i_mode;
nlink_t i_nlink;
uid_t i_uid;
Admissible operations on an object of type kdev_t:
- passing it along
- comparing it for equality with another such object
-- storing it in inode->i_dev, inode->i_rdev, req->rq_dev, de->dc_dev,
-- tty->device
+- storing it in inode->i_rdev, req->rq_dev, de->dc_dev, tty->device
- using its bit pattern as argument in a hash function
- finding its major and minor
- complaining about it
if (!inode)
return NULL;
- inode->i_dev = NODEV;
+ inode->i_dev = 0;
sock = SOCKET_I(inode);
inode->i_mode = S_IFSOCK|S_IRWXUGO;