<feed xmlns='http://www.w3.org/2005/Atom'>
<title>drakx/perl-install/partition_table/dos.pm, branch 18.59</title>
<subtitle>Mageia Installer and base platform for many utilities</subtitle>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/'/>
<entry>
<title>Erase iso9660 signature when clearing hybrid ISO partition table (mga#27864)</title>
<updated>2020-12-19T20:44:57+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2020-12-19T11:02:16+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=057a1ef4ebdf018d9f260faf34a2f40f7b2227f7'/>
<id>057a1ef4ebdf018d9f260faf34a2f40f7b2227f7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Minimise calls to ped_disk_probe() when reading partition tables (mga#15752)</title>
<updated>2019-04-20T20:35:26+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2019-04-20T10:02:52+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=2fe536b25f66c52a75ed8c53cd5f14d9e795d6a3'/>
<id>2fe536b25f66c52a75ed8c53cd5f14d9e795d6a3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>enhance partition_table doc</title>
<updated>2018-11-22T15:04:19+00:00</updated>
<author>
<name>Thierry Vignaud</name>
<email>thierry.vignaud@gmail.com</email>
</author>
<published>2018-11-22T14:58:13+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=280850cbe303d140ae7733f73bcb17c5903b60ed'/>
<id>280850cbe303d140ae7733f73bcb17c5903b60ed</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add safety net for informing the kernel after writing a DOS partition table.</title>
<updated>2017-04-04T18:04:47+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2017-04-02T18:45:27+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=23db13194282cfff24d4bc88a7790ebd272953a0'/>
<id>23db13194282cfff24d4bc88a7790ebd272953a0</id>
<content type='text'>
There is an unidentified condition that prevents udevd calling the
BLKRRPART ioctl after a partition table is written. It looks like
either the kernel or udevd drops device change events if they are
too closely spaced in time. So, in the case where we expect udevd
to call BLKRRPART, check /proc/partitions to make sure it has done
so. Arbitrarily try 5 times, 100ms apart, before giving up and
informing the kernel ourselves.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is an unidentified condition that prevents udevd calling the
BLKRRPART ioctl after a partition table is written. It looks like
either the kernel or udevd drops device change events if they are
too closely spaced in time. So, in the case where we expect udevd
to call BLKRRPART, check /proc/partitions to make sure it has done
so. Arbitrarily try 5 times, 100ms apart, before giving up and
informing the kernel ourselves.
</pre>
</div>
</content>
</entry>
<entry>
<title>Ensure kernel is informed when a DOS partition table is cleared.</title>
<updated>2017-03-14T22:22:31+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2017-03-12T18:51:16+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=af4fa8371fa40bb5012a7af40f0f667059e8a138'/>
<id>af4fa8371fa40bb5012a7af40f0f667059e8a138</id>
<content type='text'>
diskdrake allows the user to clear all partitions even when some of those
partitions are currently mounted. partition_table::dos::need_to_tell_kernel()
must return true in this case, as the automatic reread of the partition table
triggered by udevd will fail.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
diskdrake allows the user to clear all partitions even when some of those
partitions are currently mounted. partition_table::dos::need_to_tell_kernel()
must return true in this case, as the automatic reread of the partition table
triggered by udevd will fail.
</pre>
</div>
</content>
</entry>
<entry>
<title>Always tell the kernel about partition table changes when running the classic installer (mga#20074).</title>
<updated>2017-02-25T11:47:26+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2017-02-20T21:42:27+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=37a48c57d0c295e29049d23d1d37a800e1ee24af'/>
<id>37a48c57d0c295e29049d23d1d37a800e1ee24af</id>
<content type='text'>
The automatic rescan of the partition table is triggered by udevd. The
udev rule that causes this is not present on the cut-down system that
runs the classic installer.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The automatic rescan of the partition table is triggered by udevd. The
udev rule that causes this is not present on the cut-down system that
runs the classic installer.
</pre>
</div>
</content>
</entry>
<entry>
<title>Preserve DOS "Empty" partitions instead of treating them as free space (mga#20074).</title>
<updated>2017-02-25T11:31:16+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2017-01-21T20:23:18+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=0d79e34dad3062575746f97c613f0e643a2d8b29'/>
<id>0d79e34dad3062575746f97c613f0e643a2d8b29</id>
<content type='text'>
To minimise the changes this close to mga6 release (and until we fix
the bug in partition auto-allocation that mistakenly creates BIOS boot
partitions non-GPT disks), reuse the BIOS_GRUB flag for flagging Empty
partitions, as the real partition ID (0x00) is used to flag free space.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
To minimise the changes this close to mga6 release (and until we fix
the bug in partition auto-allocation that mistakenly creates BIOS boot
partitions non-GPT disks), reuse the BIOS_GRUB flag for flagging Empty
partitions, as the real partition ID (0x00) is used to flag free space.
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't tell the kernel about partition table changes when it rescans them automatically (mga#20074).</title>
<updated>2017-02-25T11:31:03+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2017-01-21T20:00:20+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=6f0880e11d1f83ca239c823cece00fc7d034dddb'/>
<id>6f0880e11d1f83ca239c823cece00fc7d034dddb</id>
<content type='text'>
When no partitions on a DOS-partitioned disk are mounted, the kernel
automatically rescans the partition table when it is written to disk.
We shouldn't then try to update the kernel's view of the partition
table, as the list of deltas we have recorded is relative to the
previous state of the partition table, not the newly rescanned state.

The behaviour for other partition table types is unchanged.

v2 (tvignaud): just make base class assume the kernel doesn't reread, only mbr
subclass overrides need_to_tell_kernel() in order to be smarter
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When no partitions on a DOS-partitioned disk are mounted, the kernel
automatically rescans the partition table when it is written to disk.
We shouldn't then try to update the kernel's view of the partition
table, as the list of deltas we have recorded is relative to the
previous state of the partition table, not the newly rescanned state.

The behaviour for other partition table types is unchanged.

v2 (tvignaud): just make base class assume the kernel doesn't reread, only mbr
subclass overrides need_to_tell_kernel() in order to be smarter
</pre>
</div>
</content>
</entry>
<entry>
<title>Ensure the kernel doesn't rescan a partially written partition table (mga#20074).</title>
<updated>2017-02-25T11:30:56+00:00</updated>
<author>
<name>Martin Whitaker</name>
<email>mageia@martin-whitaker.me.uk</email>
</author>
<published>2017-01-21T19:38:55+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=a5473711818b2519552561b33c3f181ab1bbfde6'/>
<id>a5473711818b2519552561b33c3f181ab1bbfde6</id>
<content type='text'>
When no partitions on a DOS-partitioned disk are mounted, the kernel
automatically rescans the partition table when the file handle to the
raw device is released. Currently the code opens and closes the raw
device when writing the primary partition table and when writing each
extended partition table segment. As the extended partition table
segments form a linked list, this allows the kernel to get in and
rescan the table when the list is not in a coherent state. This patch
changes the code to open the raw device before writing the primary
partition table and to close it only after writing the last extended
partition table segment.

The behaviour for other partition table types is unchanged.

v2 (tvignaud): simplify by moving copies of noop funcs into the base class
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When no partitions on a DOS-partitioned disk are mounted, the kernel
automatically rescans the partition table when the file handle to the
raw device is released. Currently the code opens and closes the raw
device when writing the primary partition table and when writing each
extended partition table segment. As the extended partition table
segments form a linked list, this allows the kernel to get in and
rescan the table when the list is not in a coherent state. This patch
changes the code to open the raw device before writing the primary
partition table and to close it only after writing the last extended
partition table segment.

The behaviour for other partition table types is unchanged.

v2 (tvignaud): simplify by moving copies of noop funcs into the base class
</pre>
</div>
</content>
</entry>
<entry>
<title>fix path in comment</title>
<updated>2015-12-24T11:28:17+00:00</updated>
<author>
<name>Thierry Vignaud</name>
<email>thierry.vignaud@gmail.com</email>
</author>
<published>2015-12-24T11:28:17+00:00</published>
<link rel='alternate' type='text/html' href='https://gitweb.mageia.org/software/drakx/commit/?id=e3fd08fa7700358f9220dee5bdab66b8b6deda12'/>
<id>e3fd08fa7700358f9220dee5bdab66b8b6deda12</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
