1
2006-10-15 Yoshinori K. Okuji <okuji@enbug.org>
3
* configure.ac (AC_INIT): Bumped to 1.95.
5
2006-10-14 Robert Millan <rmh@aybabtu.com>
7
* util/i386/pc/getroot.c (grub_guess_root_device): Don't compare os_dev
8
with "/dev/.static/dev/md".
10
2006-10-14 Yoshinori K. Okuji <okuji@enbug.org>
12
* util/i386/pc/grub-probe.c (probe): Print DEVICE_NAME instead of
13
DRIVE_NAME when grub_util_biosdisk_get_grub_dev fails. Open
14
DRIVE_NAME instead of DEVICE_NAME. Make sure that DEVICE_NAME and
15
DRIVE_NAME are always freed.
17
* util/i386/pc/biosdisk.c (make_device_name): Add one into
18
DOS_PART, as a DOS partition is counted from one instead of zero
19
now. Reported by Robert Millan.
21
2006-10-14 Robert Millan <rmh@aybabtu.com>
23
* util/i386/pc/getroot.c (grub_guess_root_device): Stop using
24
grub_util_biosdisk_get_grub_dev to convert system device to GRUB device.
25
* util/grub-emu.c (main): Use grub_util_biosdisk_get_grub_dev with the
26
string returned by grub_guess_root_device.
27
* util/i386/pc/grub-setup.c: Likewise.
28
* util/i386/pc/grub-probefs.c: Likewise.
30
* util/i386/pc/grub-probefs.c: Rename to ...
31
* util/i386/pc/grub-probe.c: ... this.
32
* DISTLIST: Remove grub-probefs, add grub-probe.
33
* conf/i386-efi.rmk: Likewise.
34
* conf/i386-pc.rmk: Likewise.
35
* util/i386/pc/grub-install.in: Likewise.
37
* util/i386/pc/grub-probe.c: Add --target=(fs|device|drive) option to
38
choose which information we want to print.
40
2006-10-14 Yoshinori K. Okuji <okuji@enbug.org>
42
* DISTLIST: Added commands/echo.c, disk/lvm.c, disk/raid.c,
43
include/grub/bitmap.h, include/grub/lvm.h, include/grub/raid.h,
44
include/grub/i386/pc/vbeutil.h, include/grub/util/lvm.h,
45
include/grub/util/raid.h, util/lvm.c, util/raid.c, video/bitmap.c,
46
video/readers/tga.c and video/i386/pc/vbeutil.c.
48
2006-10-14 Jeroen Dekkers <jeroen@dekkers.cx>
50
Added support for RAID and LVM.
52
* disk/lvm.c: New file.
53
* disk/raid.c: Likewise.
54
* include/grub/lvm.h: Likewise.
55
* include/grub/raid.h: Likewise.
56
* include/grub/util/lvm.h: Likewise.
57
* include/grub/util/raid.h: Likewise.
58
* util/lvm.c: Likewise.
59
* util/raid.c: Likewise.
61
* include/grub/disk.h (grub_disk_dev_id): Add
62
GRUB_DISK_DEVICE_RAID_ID and GRUB_DISK_DEVICE_LVM_ID.
63
(grub_disk_get_size): New prototype.
64
* kern/disk.c (grub_disk_open): Check whether grub_partition_probe()
66
(grub_disk_get_size): New function.
68
* kern/i386/pc/init.c (make_install_device): Copy the prefix
69
verbatim if grub_install_dos_part is -2.
71
* util/i386/pc/getroot.c (grub_guess_root_device): Support RAID
74
* util/i386/pc/grub-setup.c (setup): New argument
75
MUST_EMBED. Force embedding of GRUB when the argument is
76
true. Close FILE before returning.
77
(main): Add support for RAID and LVM.
79
* conf/common.rmk: Add RAID and LVM modules.
80
* conf/i386-pc.rmk (grub_setup_SOURCES): Add util/raid.c and
82
(grub_emu_SOURCES): Add disk/raid.c and disk/lvm.c.
84
* kern/misc.c (grub_strstr): New function.
85
* include/grub/misc.h (grub_strstr): New prototype.
87
2006-10-10 Tristan Gingold <tristan.gingold@bull.net>
89
* include/grub/efi/api.h (GRUB_EFI_ERROR_CODE): Long constant.
91
2006-10-05 Tristan Gingold <tristan.gingold@bull.net>
93
* kern/misc.c (grub_strtoull): Guess the base only if not
96
2005-10-01 Hollis Blanchard <hollis@penguinppc.org>
98
* kern/powerpc/ieee1275/cmain.c (cmain): Remove incomplete Old World
101
2005-10-01 Hollis Blanchard <hollis@penguinppc.org>
103
* disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Cast `size' to long.
105
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_next_property):
106
Remove `flags' argument. All callers changed.
107
* kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_ROOT): Removed.
108
(IEEE1275_IHANDLE_INVALID): New variable.
109
(IEEE1275_CELL_INVALID): New variable.
110
(grub_ieee1275_finddevice, grub_ieee1275_get_property,
111
grub_ieee1275_get_property_length, grub_ieee1275_instance_to_package,
112
grub_ieee1275_package_to_path, grub_ieee1275_instance_to_path,
113
grub_ieee1275_peer, grub_ieee1275_child, grub_ieee1275_open,
114
grub_ieee1275_claim, grub_ieee1275_set_property): Error-check return
115
codes from Open Firmware. All callers updated.
116
(grub_ieee1275_next_property): Directly return Open Firmware return
118
* kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options):
119
Standardize error checking from `grub_ieee1275_get_property'.
120
* kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Rename
121
`devalias' to `aliases'. Correct comments. Consolidate error paths.
123
2005-10-01 Hollis Blanchard <hollis@penguinppc.org>
125
* kern/ieee1275/ieee1275.c (grub_ieee1275_instance_to_path): Rename
126
`instance_to_package_args' to `instance_to_path_args'.
128
* kern/powerpc/ieee1275/init.c (grub_machine_init): Use
129
`grub_ieee1275_chosen'.
131
* term/ieee1275/ofconsole.c (grub_ofconsole_init): Call
132
`grub_ieee1275_interpret'.
134
2005-09-25 Hollis Blanchard <hollis@penguinppc.org>
136
* util/powerpc/ieee1275/grub-mkimage.c: Include config.h.
138
2005-09-25 Hollis Blanchard <hollis@penguinppc.org>
140
* include/grub/powerpc/libgcc.h (__floatdisf): New prototype.
143
* kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Pass 0 as
144
`flags' to `grub_ieee1275_next_property'. Change `pathlen' to type
147
* kern/powerpc/ieee1275/cmain.c: Include grub/misc.h.
149
* loader/powerpc/ieee1275/linux.c (grub_linux_boot): Change `actual'
150
to type `grub_ssize_t'.
151
(grub_rescue_cmd_linux): Cast -1 to `grub_off_t'.
153
2006-09-22 Marco Gerards <marco@gnu.org>
155
* normal/script.c (grub_script_create_cmdmenu): Skip leading
158
2006-09-22 Marco Gerards <marco@gnu.org>
160
* commands/echo.c: New file.
162
* conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/echo.c'.
164
* conf/common.rmk (echo_mod_SOURCES): New variable.
165
(echo_mod_CFLAGS): Likewise.
166
(echo_mod_LDFLAGS): Likewise.
168
2006-09-22 Marco Gerards <marco@gnu.org>
170
* normal/main.c (get_line): Malloc memory instead of using
171
preallocated memory. Removed the arguments `cmdline' and
172
`max_len'. Updated all callers.
174
2006-09-22 Marco Gerards <marco@gnu.org>
176
* conf/i386-efi.rmk (grub_emu_DEPENDENCIES): New variable.
177
(normal_mod_DEPENDENCIES): Likewise.
179
* conf/powerpc-ieee1275.rmk (grub_emu_DEPENDENCIES): Likewise.
180
(normal_mod_DEPENDENCIES): Likewise.
182
* conf/sparc64-ieee1275.rmk (normal_mod_DEPENDENCIES): Likewise.
184
2006-09-22 Johan Rydberg <jrydberg@gnu.org>
186
* genmk.rb: Add DEPENDENCIES variables to modules, utilities, and
188
* conf/i386-pc.rmk (grub_emu_DEPENDENCIES): Declare.
189
(normal_mod_DEPENDENCIES): Likewise.
190
* conf/i386-pc.mk: Regenerate.
191
* conf/i386-efi.mk: Likewise
192
* conf/common.mk: Likewise.
193
* conf/powerpc-ieee1275.mk: Likewise.
194
* conf/sparc64-ieee1275.mk: Likewise.
196
2006-09-22 Robert Millan <rmh@aybabtu.com>
198
Sync with i386 version.
199
* conf/powerpc-ieee1275.rmk (bin_UTILITIES): Remove grub-emu, add grub-mkimage.
200
* conf/powerpc-ieee1275.rmk (sbin_UTILITIES): Remove grub-mkimage, add grub-emu.
202
2006-09-21 Robert Millan <rmh@aybabtu.com>
204
Import from GRUB Legacy (lib/device.c):
205
* util/i386/pc/grub-mkdevicemap.c (get_i2o_disk_name): New function.
206
(init_device_map) [__linux__]: Add support for I2O devices.
208
2006-09-14 Marco Gerards <marco@gnu.org>
210
* conf/i386-pc.rmk (COMMON_LDFLAGS): Use `-m32' instead of
213
2006-09-14 Robert Millan <rmh@aybabtu.com>
215
* util/i386/pc/grub-install.in: Skip menu.lst when removing
218
* util/i386/pc/getroot.c: Don't recurse into dotdirs (e.g. ".static").
220
* util/i386/pc/grub-mkdevicemap.c: Make sure the floppy device exists
221
before adding it to device.map.
223
2006-08-15 Johan Rydberg <jrydberg@gnu.org>
225
* genmk.rb: Let GCC generate dependenceies the first time it
226
compiles a file; using the -MD option.
227
* conf/common.mk: Regenerate.
228
* conf/i386-pc.mk: Likewise.
229
* conf/i386-efi.mk: Likewise.
230
* conf/powerpc-ieee1275.mk: Likewise.
231
* conf/sparc64-ieee1275.mk: Likewise.
233
2006-08-04 Yoshinori K. Okuji <okuji@enbug.org>
235
Move the prototypes of grub_setjmp and grub_longjmp to
236
cpu/setjmp.h, so that each architecture may specify different
239
* include/grub/i386/setjmp.h (grub_setjmp): New prototype.
240
(grub_longjmp): Likewise.
241
* include/grub/powerpc/setjmp.h (grub_setjmp): Likewise..
242
(grub_longjmp): Likewise.
243
* include/grub/sparc64/setjmp.h (grub_setjmp): Likewise..
244
(grub_longjmp): Likewise.
246
* include/grub/setjmp.h [!GRUB_UTIL] (grub_setjmp): Removed.
247
[!GRUB_UTIL] (grub_longjmp): Removed.
249
2006-08-01 Pelletier Vincent <subdino2004@yahoo.fr>
251
* kern/ieee1275/ieee1275.c (grub_ieee1275_set_color): IEEE1275
252
"color!" method does not return any value.
254
2006-07-29 Vesa Jaaskelainen <chaac@nic.fi>
256
* include/grub/bitmap.h: New file.
258
* include/grub/i386/pc/vbeutil.h: Likewise.
260
* video/bitmap.c: Likewise.
262
* video/readers/tga.c: Likewise.
264
* video/i386/pc/vbeutil.c: Likewise.
266
* commands/videotest.c: Code cleanup and updated to reflect to new
269
* term/gfxterm.c: Likewise.
271
* video/video.c: Likewise.
273
* conf/i386-pc.rmk (pkgdata_MODULES): Added tga.mod and bitmap.mod.
274
(vbe_mod_SOURCES): Added video/i386/pc/vbeutil.c.
275
(bitmap_mod_SOURCES): New entry.
276
(bitmap_mod_CFLAGS): Likewise.
277
(bitmap_mod_LDFLAGS): Likewise.
278
(tga_mod_SOURCES): Likewise.
279
(tga_mod_CFLAGS): Likewise.
280
(tga_mod_LDFLAGS): Likewise.
282
* include/grub/video.h (grub_video_blit_operators): New enum type.
283
(grub_video_render_target): Changed as forward declaration and moved
284
actual definition to be video driver specific.
285
(grub_video_adapter.blit_bitmap): Added blitting operator.
286
(grub_video_adapter.blit_render_target): Likewise.
287
(grub_video_blit_bitmap): Likewise.
288
(grub_video_blit_render_target): Likewise.
290
* include/grub/i386/pc/vbe.h (grub_video_render_target): Added
291
driver specific render target definition.
292
(grub_video_vbe_map_rgba): Added driver internal helper.
293
(grub_video_vbe_unmap_color): Updated to use
294
grub_video_i386_vbeblit_info.
295
(grub_video_vbe_get_video_ptr): Likewise.
297
* include/grub/i386/pc/vbeblit.h
298
(grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8): Updated to use
299
grub_video_i386_vbeblit_info.
300
(grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise.
301
(grub_video_i386_vbeblit_index_R8G8B8A8): Likewise.
302
(grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise.
303
(grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise.
304
(grub_video_i386_vbeblit_index_R8G8B8): Likewise.
305
(grub_video_i386_vbeblit_index_index): Likewise.
306
(grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): New blitter function.
307
(grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise.
308
(grub_video_i386_vbeblit_index_R8G8B8X8): Likewise.
309
(grub_video_i386_vbeblit_blend): Added generic blitter for blend
311
(grub_video_i386_vbeblit_replace): Added generic blitter for replace
314
* video/i386/pc/vbeblit.c: Updated to reflect changes on
315
include/grub/i386/pc/vbeblit.h.
317
* include/grub/i386/pc/vbefill.h (grub_video_i386_vbefill_R8G8B8A8):
318
Updated to use grub_video_i386_vbeblit_info.
319
(grub_video_i386_vbefill_R8G8B8): Likewise.
320
(grub_video_i386_vbefill_index): Likewise.
321
(grub_video_i386_vbefill): Added generic filler.
323
* video/i386/pc/vbefill.c: Updated to reflect changes on
324
include/grub/i386/pc/vbefill.h.
326
* video/i386/pc/vbe.c (grub_video_vbe_get_video_ptr): Updated to use
327
grub_video_i386_vbeblit_info.
328
(grub_video_vbe_unmap_color): Likewise.
329
(grub_video_vbe_blit_glyph): Likewise.
330
(grub_video_vbe_scroll): Likewise.
331
(grub_video_vbe_draw_pixel): Removed function.
332
(grub_video_vbe_get_pixel): Likewise.
333
(grub_video_vbe_fill_rect): Moved all blitters to vbefill.c and
334
updated code to use it.
335
(common_blitter): Added common blitter for render target and bitmap.
336
(grub_video_vbe_blit_bitmap): Updated to use common_blitter.
337
(grub_video_vbe_blit_render_target): Likewise.
339
2006-07-30 Johan Rydberg <jrydberg@gnu.org>
341
* kern/efi/efi.c (grub_efi_set_text_mode): Assume console already
342
is in text mode if there is no console control protocol instance
345
2006-07-29 Vesa Jaaskelainen <chaac@nic.fi>
347
* include/grub/video.h: Code cleanup.
349
* include/grub/i386/pc/vbe.h: Likewise.
351
* video/i386/pc/vbe.c: Likewise.
353
* video/i386/pc/vbeblit.c: Likewise.
355
* video/i386/pc/vbefill.c: Likewise.
357
* video/video.c: Likewise. Also added more comments.
359
2006-07-29 Vesa Jaaskelainen <chaac@nic.fi>
361
* disk/i386/pc/biosdisk.c (struct grub_biosdisk_drp): Moved to ...
362
(struct grub_biosdisk_dap): Likewise.
364
* include/grub/i386/pc/biosdisk.h: ... to here. Also corrected
365
linkage settings for all functions.
367
2006-07-12 Marco Gerards <marco@gnu.org>
369
* configure.ac (--enable-mm-debug): Fix typo.
371
* genkernsyms.sh.in: Use proper quoting for `CC'.
373
2006-07-02 Jeroen Dekkers <jeroen@dekkers.cx>
375
* conf/i386-pc.rmk (COMMON_ASFLAGS): Add "-m32".
376
(normal_mod_ASFLAGS): Remove "-m32".
378
2006-06-14 Yoshinori K. Okuji <okuji@enbug.org>
380
* util/misc.c: Include config.h.
381
[!HAVE_MEMALIGN]: Do not include malloc.h.
382
(grub_memalign): Use posix_memalign, if present. Then, use
383
memalign, if present. Otherwise, emit an error.
385
* util/grub-emu.c: Do not include malloc.h.
387
* include/grub/util/misc.h: Include unistd.h. This is required for
388
FreeBSD, because off_t is defined in unistd.h. Reported by Harley
389
D. Eades III <hde@foobar-qux.org>.
391
* configure.ac (AC_GNU_SOURCE): Added.
392
(AC_CHECK_FUNCS): Check posix_memalign and memalign for the host
395
2006-06-09 Yoshinori K. Okuji <okuji@enbug.org>
397
* loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Make sure that
398
ADDR_MAX does not exceed GRUB_LINUX_INITRD_MAX_ADDRESS.
400
2006-06-07 Jeroen Dekkers <jeroen@dekkers.cx>
402
* include/grub/types.h (grub_host_addr_t): Rename to
404
(grub_host_off_t): Rename to grub_target_off_t.
405
(grub_host_size_t): Rename to grub_target_size_t.
406
(grub_host_ssize_t): Rename to grub_target_ssize_t.
407
Refer to GRUB_TARGET_SIZEOF_VOID_P to define those variables.
409
* include/grub/kernel.h (struct grub_module_header): Change type
410
of OFFSET to grub_target_off_t and type of SIZE to grub_target_size_t.
411
(grub_module_info): Likewise.
413
2006-06-05 Yoshinori K. Okuji <okuji@enbug.org>
415
* loader/i386/pc/linux.c (grub_rescue_cmd_initrd): The conditional
416
of checking LINUX_MEM_SIZE was reverse. Reported by Jesus
417
Velazquez <jesus.velazquez@gmail.com>.
419
2006-06-05 Yoshinori K. Okuji <okuji@enbug.org>
421
Count partitions from 1 instead of 0 in the string representation
422
of partitions. Still use 0-based internally.
424
* partmap/sun.c (grub_sun_is_valid): A cosmetic change.
425
(sun_partition_map_iterate): Use grub_partition_t instead of
426
struct grub_partition *. Cast DESC->START_CYLINDER to
427
grub_uint64_t after converting the endian.
428
(sun_partition_map_probe): Subtract 1 for PARTNUM.
429
(sun_partition_map_get_name): Add 1 to P->INDEX.
431
* partmap/pc.c (grub_partition_parse): Subtract 1 for
433
(pc_partition_map_get_name): Add 1 into PCDATA->DOS_PART.
435
* partmap/gpt.c (gpt_partition_map_iterate): Initialize PARTNO to
437
(gpt_partition_map_probe): Subtract 1 for PARTNUM.
438
(gpt_partition_map_get_name): Add 1 into P->INDEX.
440
* partmap/apple.c (apple_partition_map_iterate): Change the type
442
(apple_partition_map_probe): Subtract 1 for PARTNUM.
443
(apple_partition_map_get_name): Add 1 into P->INDEX.
445
* partmap/amiga.c (amiga_partition_map_iterate): Change the type
447
(amiga_partition_map_iterate): Cast NEXT to grub_off_t to
448
calculate the offset of a partition.
449
(amiga_partition_map_probe): Subtract 1 for PARTNUM.
450
(amiga_partition_map_get_name): Add 1 into P->INDEX.
452
* partmap/acorn.c (acorn_partition_map_find): Change the type of
453
SECTOR to grub_disk_addr_t.
454
(acorn_partition_map_iterate): Likewise.
455
(acorn_partition_map_probe): Subtract 1 for PARTNUM.
456
Change the type of SECTOR to grub_disk_addr_t. Declare P on the
458
(acorn_partition_map_get_name): Add 1 into P->INDEX.
460
* kern/i386/pc/init.c (make_install_device): Add 1 into
461
GRUB_INSTALL_DOS_PART.
463
* fs/iso9660.c (grub_iso9660_mount): Fixed a reversed
466
2006-06-04 Yoshinori K. Okuji <okuji@enbug.org>
468
Clean up the code to support 64-bit addressing in disks and
469
files. This change is not enough for filesystems yet.
471
* util/i386/pc/grub-setup.c (struct boot_blocklist): Change the
472
type of "start" to grub_uint64_t.
473
(setup): Change the types of KERNEL_SECTOR and FIRST_SECTOR to
474
grub_disk_addr_t * and grub_disk_addr_t. Fix the format string in
475
save_first_sector and save_blocklists. Use grub_le_to_cpu64 to
478
* util/i386/pc/biosdisk.c (open_device): Change the type of SECTOR
481
* partmap/gpt.c (gpt_partition_map_iterate): Fix the format
484
* partmap/pc.c (pc_partition_map_iterate): Likewise.
486
* partmap/amiga.c (amiga_partition_map_iterate): Cast RDSK.MAGIC
489
* normal/script.c (grub_script_parse): Remove unused MEMFREE.
491
* normal/parser.y (YYLTYPE_IS_TRIVIAL): New macro.
493
* normal/lexer.c (grub_script_yyerror): Specify unused to LEX.
495
* loader/i386/pc/multiboot.c (grub_multiboot_load_elf64): Cast -1
496
to grub_off_t, to detect an error from grub_file_seek.
497
(grub_multiboot_load_elf32): Likewise.
499
* kern/misc.c (grub_strtoul): Use grub_strtoull. Return the
500
maximum unsigned long value when an overflow is detected.
501
(grub_strtoull): New function.
502
(grub_divmod64): Likewise.
503
(grub_lltoa): use grub_divmod64.
505
* kern/fs.c (struct grub_fs_block): Change the type of "offset" to
507
(grub_fs_blocklist_open): Increase P if P is not NULL to advance
508
the pointer to next character. Use grub_strtoull instead of
510
(grub_fs_blocklist_read): Change the types of SECTOR, OFFSET and
511
SIZE to grub_disk_addr_t, grub_off_t and grub_size_t,
514
* kern/file.c (grub_file_read): Prevent an oveflow of LEN, as the
515
return value is signed.
516
(grub_file_seek): Change the type of OLD to grub_off_t. Do not
517
test if OFFSET is less than zero, as OFFSET is unsigned now.
519
* kern/disk.c (struct grub_disk_cache): Change the type of
520
"sector" to grub_disk_addr_t.
521
(grub_disk_cache_get_index): Change the type of SECTOR to
522
grub_disk_addr_t. Calculate the hash with SECTOR casted to
523
unsigned after shifting.
524
(grub_disk_cache_invalidate): Change the type of SECTOR to
526
(grub_disk_cache_unlock): Likewise.
527
(grub_disk_cache_store): Likewise.
528
(grub_disk_check_range): Change the types of SECTOR, OFFSET, SIZE,
529
START and LEN to grub_disk_addr_t *, grub_off_t *, grub_size_t,
530
grub_disk_addr_t and grub_uint64_t, respectively.
531
(grub_disk_read): Use an unsigned variable REAL_OFFSET for the
532
body, as the value of OFFSET is tweaked by
533
grub_disk_check_range. Change the types of START_SECTOR, LEN and
534
POS to grub_disk_addr_t, grub_size_t and grub_size_t,
536
(grub_disk_write): Use an unsigned variable REAL_OFFSET for the
537
body, as the value of OFFSET is tweaked by
538
grub_disk_check_range. Change the types of LEN and N to
541
* io/gzio.c (struct grub_gzio): Change the types of "data_offset"
542
and "saved_offset" to grub_off_t.
543
(test_header): Cast BUF to char *.
544
(get_byte): Cast GZIO->DATA_OFFSET to grub_off_t. Cast GZIO->INBUF
546
(grub_gzio_read): Change the types of OFFSET and SIZE to
547
grub_off_t and grub_size_t, respectively.
549
* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_FORCE_LBA):
551
(GRUB_BOOT_MACHINE_BOOT_DRIVE): Changed to 0x4c.
552
(GRUB_BOOT_MACHINE_KERNEL_ADDRESS): Changed to 0x40.
553
(GRUB_BOOT_MACHINE_KERNEL_SEGMENT): Changed to 0x42.
554
(GRUB_BOOT_MACHINE_DRIVE_CHECK): Changed to 0x4e.
555
(GRUB_BOOT_MACHINE_LIST_SIZE): Increased to 12.
557
* include/grub/types.h (grub_off_t): Unconditionally set to
559
(grub_disk_addr_t): Changed to grub_uint64_t.
561
* include/grub/partition.h (struct grub_partition): Change the
562
types of "start", "len" and "offset" to grub_disk_addr_t,
563
grub_uint64_t and grub_disk_addr_t, respectively.
564
(grub_partition_get_start): Return grub_disk_addr_t.
565
(grub_partition_get_len): Return grub_uint64_t.
567
* include/grub/misc.h (grub_strtoull): New prototype.
568
(grub_divmod64): Likewise.
570
* include/grub/fshelp.h (grub_fshelp_read_file): Change the types
571
of SECTOR, LEN and FILESIZE to grub_disk_addr_t, grub_size_t and
572
grub_off_t, respectively.
573
All callers and references changed.
575
* include/grub/fs.h (struct grub_fs): Change the type of LEN to
576
grub_size_t in "read".
577
All callers and references changed.
579
* include/grub/file.h (struct grub_file): Change the types of
580
"offset" and "size" to grub_off_t and grub_off_t,
581
respectively. Change the type of SECTOR to grub_disk_addr_t in
583
(grub_file_read): Change the type of LEN to grub_size_t.
584
(grub_file_seek): Return grub_off_t. Change the type of OFFSET to
586
(grub_file_size): Return grub_off_t.
587
(grub_file_tell): Likewise.
588
All callers and references changed.
590
* include/grub/disk.h (struct grub_disk_dev): Change the types of
591
SECTOR and SIZE to grub_disk_addr_t and grub_size_t in "read" and
593
(struct grub_disk): Change the type of "total_sectors" to
594
grub_uint64_t. Change the type of SECTOR to grub_disk_addr_t in
596
(grub_disk_read): Change the types of SECTOR, OFFSET and SIZE to
597
grub_disk_addr_t, grub_off_t and grub_size_t, respectively.
598
(grub_disk_write): Likewise.
599
All callers and references changed.
601
* fs/iso9660.c (grub_iso9660_susp_iterate): Cast parameters to
602
char * for grub_strncmp to silence gcc.
603
(grub_iso9660_mount): Likewise.
604
(grub_iso9660_mount): Likewise.
605
(grub_iso9660_read_symlink): Likewise. Also, remove the nonsense
607
(grub_iso9660_iterate_dir): Likewise.
608
(grub_iso9660_label): Cast DATA->VOLDESC.VOLNAME to char *.
610
* fs/hfs.c (grub_hfs_read_file): Change the types of SECTOR and
611
LEN to grub_disk_addr_t and grub_size_t, respectively.
613
* fs/hfsplus.c (grub_hfsplus_read_file): Likewise.
615
* fs/jfs.c (grub_jfs_read_file): Likewise.
617
* fs/minix.c (grub_jfs_read_file): Likewise.
619
* fs/sfs.c (grub_jfs_read_file): Likewise.
621
* fs/ufs.c (grub_jfs_read_file): Likewise.
623
* fs/xfs.c (grub_jfs_read_file): Likewise.
625
* fs/fat.c (grub_fat_read_data): Change the types of SECTOR, LEN
626
and SIZE to grub_disk_addr_t, grub_size_t and grub_size_t,
629
* fs/ext2.c (grub_ext2_read_block): When an error happens, set
630
BLKNR to -1 instead of returning GRUB_ERRNO.
631
(grub_ext2_read_file): Change the types of SECTOR and
632
LEN to grub_disk_addr_t and grub_size_t, respectively.
634
* fs/affs.c (grub_affs_read_file): Change the types of SECTOR and
635
LEN to grub_disk_addr_t and grub_size_t, respectively.
637
* font/manager.c (grub_font_get_glyph): Cast BITMAP to char * for
640
* disk/ieee1275/ofdisk.c (grub_ofdisk_read): Fix the format
641
string. Do not cast SECTOR explicitly.
643
* disk/i386/pc/biosdisk.c (grub_biosdisk_open): Change the type of
644
TOTAL_SECTORS to grub_uint64_t. Do not mask DRP->TOTAL_SECTORS.
645
(grub_biosdisk_rw): Change the types of SECTOR and SIZE to
646
grub_disk_addr_t and grub_size_t, respectively. If the sector is
647
over 2TB and LBA mode is not supported, raise an error.
648
(get_safe_sectors): New function.
649
(grub_biosdisk_read): Use get_safe_sectors.
650
(grub_biosdisk_write): Likewise.
652
* disk/efi/efidisk.c (grub_efidisk_read): Fix the format string.
653
(grub_efidisk_write): Likewise.
655
* disk/loopback.c (delete_loopback): Cosmetic changes.
656
(grub_cmd_loopback): Likewise. Also, test NEWDEV->FILENAME
658
(grub_loopback_open): Likewise.
659
(grub_loopback_read): Likewise. Also, change the type of POS to
660
grub_off_t, and fix the usage of grub_memset.
662
* commands/i386/pc/play.c: Include grub/machine/time.h.
664
* commands/ls.c (grub_ls_list_files): Use "llu" instead of "d" to
667
* commands/configfile.c: Include grub/env.h.
669
* commands/cmp.c (grub_cmd_cmp): Do not use ERR, but use
670
GRUB_ERRNO directly instead. Change the type of POS to
671
grub_off_t. Follow the coding standard.
673
* commands/blocklist.c: Include grub/partition.h.
674
(grub_cmd_blocklist): Return an error if the underlying device is
675
not a disk. Take the starting sector of a partition into account,
676
if a partition is used.
678
* boot/i386/pc/diskboot.S (bootloop): Adapted to the new offset of
680
(lba_mode): Support 64-bit addresses.
681
(chs_mode): Likewise.
682
(copy_buffer): Adapted to the new offsets of a length field and a
684
(blocklist_default_start): Allocate 64-bit space.
686
* boot/i386/pc/boot.S (force_lba): Removed.
687
(boot_drive): Moved to under KERNEL_SECTOR.
688
(kernel_sector): Moved to under KENREL_SEGMENT. Allocate 64-bit
690
(real_start): Set %si earlier. Remove code for FORCE_LBA, since it
692
(lba_mode): Refactored to support a 64-bit address. More size
694
(setup_sectors): Likewise.
1
696
2006-06-04 Yoshinori K. Okuji <okuji@enbug.org>
3
698
* DISTLIST: Added include/grub/i386/linux.h. Removed