mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* barebox large disk problem
@ 2018-06-04  9:54 Antony Pavlov
  2018-06-04 10:05 ` Sascha Hauer
  0 siblings, 1 reply; 2+ messages in thread
From: Antony Pavlov @ 2018-06-04  9:54 UTC (permalink / raw)
  To: Sascha Hauer; +Cc: barebox

Hi!

I'm trying to use ST2000DM006-2DM164 SATA 2000 GB hard disk with barebox.
This disk has 3907029168 sectors.

Alas barebox uses 32-bit signed integer to store disk sector count
(int num_blocks from struct block_device, see include/block.h for details)
and hereby the ST2000DM006 disk is too large for barebox.

I'm planning to increase block_device.num_block size from 32bit to 64bit.
But changing struct block_device may have some unobvious drawbacks
and I can't test all block_device usage situations (e.g. EFI).

Any suggestions?

-- 
Best regards,
  Antony Pavlov

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: barebox large disk problem
  2018-06-04  9:54 barebox large disk problem Antony Pavlov
@ 2018-06-04 10:05 ` Sascha Hauer
  0 siblings, 0 replies; 2+ messages in thread
From: Sascha Hauer @ 2018-06-04 10:05 UTC (permalink / raw)
  To: Antony Pavlov; +Cc: barebox

On Mon, Jun 04, 2018 at 12:54:41PM +0300, Antony Pavlov wrote:
> Hi!
> 
> I'm trying to use ST2000DM006-2DM164 SATA 2000 GB hard disk with barebox.
> This disk has 3907029168 sectors.
> 
> Alas barebox uses 32-bit signed integer to store disk sector count
> (int num_blocks from struct block_device, see include/block.h for details)
> and hereby the ST2000DM006 disk is too large for barebox.
> 
> I'm planning to increase block_device.num_block size from 32bit to 64bit.
> But changing struct block_device may have some unobvious drawbacks
> and I can't test all block_device usage situations (e.g. EFI).
> 
> Any suggestions?

You do the change and send it to the list, we'll review it carefully ;)

In case of EFI I assume you mean the efi-block-io driver. Here EFI
internally works with 64bit variables anyway which we narrow down to
32bit for barebox. Using the 64bit variables instead shouldn't have any
undesired side effects.

It could be that some architectures lack some 64bit modulo or div
operations, but we'll notice that in the compile test.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-06-04 10:06 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-04  9:54 barebox large disk problem Antony Pavlov
2018-06-04 10:05 ` Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox