Page MenuHomeFreeBSD

D8710.diff
No OneTemporary

D8710.diff

Index: head/sys/boot/common/disk.h
===================================================================
--- head/sys/boot/common/disk.h
+++ head/sys/boot/common/disk.h
@@ -86,7 +86,7 @@
void *d_opendata;
int d_slice;
int d_partition;
- off_t d_offset;
+ uint64_t d_offset;
};
enum disk_ioctl {
@@ -97,17 +97,17 @@
/*
* Parse disk metadata and initialise dev->d_offset.
*/
-extern int disk_open(struct disk_devdesc *dev, off_t mediasize,
+extern int disk_open(struct disk_devdesc *dev, uint64_t mediasize,
u_int sectorsize, u_int flags);
#define DISK_F_NOCACHE 0x0001 /* Do not use metadata caching */
extern int disk_close(struct disk_devdesc *dev);
extern void disk_cleanup(const struct devsw *d_dev);
extern int disk_ioctl(struct disk_devdesc *dev, u_long cmd, void *buf);
-extern int disk_read(struct disk_devdesc *dev, void *buf, off_t offset,
+extern int disk_read(struct disk_devdesc *dev, void *buf, uint64_t offset,
u_int blocks);
-extern int disk_write(struct disk_devdesc *dev, void *buf, off_t offset,
+extern int disk_write(struct disk_devdesc *dev, void *buf, uint64_t offset,
u_int blocks);
-extern int ptblread(void *d, void *buf, size_t blocks, off_t offset);
+extern int ptblread(void *d, void *buf, size_t blocks, uint64_t offset);
/*
* Print information about slices on a disk.
Index: head/sys/boot/common/disk.c
===================================================================
--- head/sys/boot/common/disk.c
+++ head/sys/boot/common/disk.c
@@ -45,7 +45,7 @@
struct open_disk {
struct ptable *table;
- off_t mediasize;
+ uint64_t mediasize;
u_int sectorsize;
u_int flags;
int rcnt;
@@ -64,7 +64,7 @@
int d_partition;
struct open_disk *od;
- off_t d_offset;
+ uint64_t d_offset;
STAILQ_ENTRY(dentry) entry;
#ifdef DISK_DEBUG
uint32_t count;
@@ -171,7 +171,7 @@
}
int
-ptblread(void *d, void *buf, size_t blocks, off_t offset)
+ptblread(void *d, void *buf, size_t blocks, uint64_t offset)
{
struct disk_devdesc *dev;
struct open_disk *od;
@@ -238,7 +238,7 @@
}
int
-disk_read(struct disk_devdesc *dev, void *buf, off_t offset, u_int blocks)
+disk_read(struct disk_devdesc *dev, void *buf, uint64_t offset, u_int blocks)
{
struct open_disk *od;
int ret;
@@ -251,7 +251,7 @@
}
int
-disk_write(struct disk_devdesc *dev, void *buf, off_t offset, u_int blocks)
+disk_write(struct disk_devdesc *dev, void *buf, uint64_t offset, u_int blocks)
{
struct open_disk *od;
int ret;
@@ -274,7 +274,7 @@
}
int
-disk_open(struct disk_devdesc *dev, off_t mediasize, u_int sectorsize,
+disk_open(struct disk_devdesc *dev, uint64_t mediasize, u_int sectorsize,
u_int flags)
{
struct open_disk *od;
Index: head/sys/boot/common/part.h
===================================================================
--- head/sys/boot/common/part.h
+++ head/sys/boot/common/part.h
@@ -62,11 +62,11 @@
};
/* The offset and size are in sectors */
-typedef int (diskread_t)(void *arg, void *buf, size_t blocks, off_t offset);
+typedef int (diskread_t)(void *arg, void *buf, size_t blocks, uint64_t offset);
typedef int (ptable_iterate_t)(void *arg, const char *partname,
const struct ptable_entry *part);
-struct ptable *ptable_open(void *dev, off_t sectors, uint16_t sectorsize,
+struct ptable *ptable_open(void *dev, uint64_t sectors, uint16_t sectorsize,
diskread_t *dread);
void ptable_close(struct ptable *table);
enum ptable_type ptable_gettype(const struct ptable *table);
Index: head/sys/boot/common/part.c
===================================================================
--- head/sys/boot/common/part.c
+++ head/sys/boot/common/part.c
@@ -584,7 +584,7 @@
#endif /* LOADER_VTOC8_SUPPORT */
struct ptable*
-ptable_open(void *dev, off_t sectors, uint16_t sectorsize,
+ptable_open(void *dev, uint64_t sectors, uint16_t sectorsize,
diskread_t *dread)
{
struct dos_partition *dp;
Index: head/sys/boot/i386/libi386/biosdisk.c
===================================================================
--- head/sys/boot/i386/libi386/biosdisk.c
+++ head/sys/boot/i386/libi386/biosdisk.c
@@ -493,7 +493,7 @@
*(u_int *)data = BD(dev).bd_sectorsize;
break;
case DIOCGMEDIASIZE:
- *(off_t *)data = BD(dev).bd_sectors * BD(dev).bd_sectorsize;
+ *(uint64_t *)data = BD(dev).bd_sectors * BD(dev).bd_sectorsize;
break;
default:
return (ENOTTY);
Index: head/sys/boot/uboot/lib/disk.c
===================================================================
--- head/sys/boot/uboot/lib/disk.c
+++ head/sys/boot/uboot/lib/disk.c
@@ -282,7 +282,7 @@
*(u_int *)data = SI(dev).bsize;
break;
case DIOCGMEDIASIZE:
- *(off_t *)data = SI(dev).bsize * SI(dev).blocks;
+ *(uint64_t *)data = SI(dev).bsize * SI(dev).blocks;
break;
default:
return (ENOTTY);
Index: head/sys/boot/usb/storage/umass_loader.c
===================================================================
--- head/sys/boot/usb/storage/umass_loader.c
+++ head/sys/boot/usb/storage/umass_loader.c
@@ -143,14 +143,14 @@
uint32_t blocksize;
switch (cmd) {
- case IOCTL_GET_BLOCK_SIZE:
- case IOCTL_GET_BLOCKS:
+ case DIOCGSECTORSIZE:
+ case DIOCGMEDIASIZE:
if (usb_msc_read_capacity(umass_uaa.device, 0,
&nblock, &blocksize) != 0)
return (EINVAL);
- if (cmd == IOCTL_GET_BLOCKS)
- *(uint32_t*)buf = nblock;
+ if (cmd == DIOCGMEDIASIZE)
+ *(uint64_t*)buf = nblock;
else
*(uint32_t*)buf = blocksize;
Index: head/sys/boot/zfs/zfs.c
===================================================================
--- head/sys/boot/zfs/zfs.c
+++ head/sys/boot/zfs/zfs.c
@@ -417,7 +417,7 @@
};
static int
-zfs_diskread(void *arg, void *buf, size_t blocks, off_t offset)
+zfs_diskread(void *arg, void *buf, size_t blocks, uint64_t offset)
{
struct zfs_probe_args *ppa;

File Metadata

Mime Type
text/plain
Expires
Fri, Mar 7, 2:44 AM (18 h, 20 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
17023873
Default Alt Text
D8710.diff (5 KB)

Event Timeline