272461 |
03-Oct-2014 |
gjb |
Copy stable/10@r272459 to releng/10.1 as part of the 10.1-RELEASE process.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
259328 |
13-Dec-2013 |
trasz |
MFC r256724:
Make geom_label(4) resize-aware. This fixes a situation when "gpart resize" would resize a partition, but label providers - e.g. /dev/gptid/XXX - would stay the same size.
MFC r256766:
Fix build with gcc by spelling unused format string as "unused" instead of NULL.
Sponsored by: The FreeBSD Foundation
|
256281 |
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
250264 |
05-May-2013 |
stas |
- Use int8_t type for the mftrecsz field in g_label_ntfs. char type used previously caused probe failure on platforms where char is unsigned (e.g. ARM), as mftrecsz can be negative.
Submitted by: Ilya Bakulin <ilya@bakulin.de> MFC after: 2 weeks
|
249571 |
16-Apr-2013 |
ivoras |
Comment typo fix.
Is aware of the importance of comments: dim
|
249564 |
16-Apr-2013 |
ivoras |
Fix the buffer-overflow-fixing fixes.
Pointy-hat to: me, for not realizing snprintf() is available in kernel. Thanks to: jh, for bringing me the good news of snprintf(), Pawel Worach, for noting that the panic can be provoked in i386 and not in amd64
|
249508 |
15-Apr-2013 |
ivoras |
Introduce glabel labels based on GEOM ident attributes. In this initial implementation, error on the side of conservatism and only create labels for GEOMs of classes DISK and MULTIPATH.
Discussed with: trasz Approved by: silence from freebsd-geom@
|
248058 |
08-Mar-2013 |
dumbbell |
g_label_ntfs_taste: Abort taste is recsize == 0
This will avoid a 0-byte read (in g_read_data()) leading to a panic, if previously read data are erroneous.
Suggested by: John-Mark Gurney <jmg@funkthat.com>
|
247837 |
05-Mar-2013 |
dumbbell |
g_label_ntfs.c: Mark structures as __packed
Without this, read data is mis-interpreted. This could trigger a panic, as was the case on one computer where computed "recsize" was zero, leading to a call to g_read_page() asking for 0 bytes.
|
247662 |
02-Mar-2013 |
attilio |
Remove ntfs headers dependency for g_label_ntfs.c by redefining the used structs and values.
This patch is not targeted for MFC.
|
244585 |
22-Dec-2012 |
jh |
Mangle label names containing spaces, non-printable characters '%' or '"'. Mangling is only done for label names read from file system metadata. Encoding resembles URL encoding. For example, the space character becomes %20.
Help by: kib Discussed with: imp, kib, pjd
|
243333 |
20-Nov-2012 |
jh |
- Don't pass geom and provider names as format strings. - Add __printflike() attributes. - Remove an extra argument for the g_new_geomf() call in swapongeom_ev().
Reviewed by: pjd
|
242379 |
30-Oct-2012 |
trasz |
Fix problem with geom_label(4) not recognizing UFS labels on filesystems extended using growfs(8). The problem here is that geom_label checks if the filesystem size recorded in UFS superblock is equal to the provider (i.e. device) size. This check cannot be removed due to backward compatibility. On the other hand, in most cases growfs(8) cannot set fs_size in the superblock to match the provider size, because, differently from newfs(8), it cannot recompute cylinder group sizes.
To fix this problem, add another superblock field, fs_providersize, used only for this purpose. The geom_label(4) will attach if either fs_size (filesystem created with newfs(8)) or fs_providersize (filesystem expanded using growfs(8)) matches the device size.
PR: kern/165962 Reviewed by: mckusick Sponsored by: FreeBSD Foundation
|
241706 |
18-Oct-2012 |
attilio |
It seems that it is preferable to keep support for glabel also for filesystems that we don't support natively. Revert part of r241636 to do so.
This patch is not targeted for MFC.
Requested by: gleb, jhb
|
241636 |
17-Oct-2012 |
attilio |
Disconnect non-MPSAFE NTFS from the build in preparation for dropping GIANT from VFS. This code is particulary broken and fragile and other in-kernel implementations around, found in other operating systems, don't really seem clean and solid enough to be imported at all. If someone wants to reconsider in-kernel NTFS implementation for inclusion again, a fair effort for completely fixing and cleaning it up is expected.
In the while NTFS regular users can use FUSE interface and ntfs-3g port to work with their NTFS partitions.
This is not targeted for MFC.
|
235989 |
25-May-2012 |
trasz |
Revert r235918 for now and add comment explaining the reason for the size check.
|
235918 |
24-May-2012 |
trasz |
Make g_label(4) ignore provider size when looking for UFS labels. Without it, it fails to create labels for filesystems resized by growfs(8).
PR: kern/165962 Submitted by: Olivier Cochard-Labbe <olivier at cochard dot me>
|
223921 |
11-Jul-2011 |
ae |
Include sys/sbuf.h directly.
Reviewed by: pjd
|
221433 |
04-May-2011 |
ae |
When checking existence of providers skip those which are orphaned.
PR: kern/132273 MFC after: 2 week
|
219400 |
08-Mar-2011 |
sobomax |
Some linux distros put mount point into the ext2fs labels, such as '/', or '/boot', which confuses the devfs code and can cause userland programs to fail reading /dev/ext2fs directory with weird error code, such as any program that uses pwlib.
Strip any leading slashes before feeding the label to the geom_label code.
Sponsored by: Sippy Software, Inc.
MFC after: 1 week
|
219029 |
25-Feb-2011 |
netchild |
Add some FEATURE macros for various GEOM classes.
No FreeBSD version bump, the userland application to query the features will be committed last and can serve as an indication of the availablility if needed.
Sponsored by: Google Summer of Code 2010 Submitted by: kibab Reviewed by: silence on geom@ during 2 weeks X-MFC after: to be determined in last commit with code from this project
|
216098 |
01-Dec-2010 |
jh |
- Report an error when a label with invalid name is attempted to be created with glabel(8). - Fix a typo in an error message. - Fix comment typos.
Approved by: pjd
|
208672 |
31-May-2010 |
avg |
g_label: fix possible NULL pointer dereference
in case glabel debug level is >= 1 and gp->provider list is empty for some reason
Found by: clang static analyzer MFC after: 4 days
|
199875 |
28-Nov-2009 |
trasz |
Provide a set of sysctls and tunables to disable device node creation for specific "kinds" of disk labels - for example, GPT UUIDs. Reason for this is that sometimes, other GEOM classes attach to these device nodes instead of the proper ones - e.g. they attach to /dev/gptid/XXX instead of /dev/ada0p2, which is annoying.
Reviewed by: pjd (earlier version) MFC after: 1 month
|
197898 |
09-Oct-2009 |
pjd |
If provider is open for writing when we taste it, skip it for classes that depend on on-disk metadata. This was we won't attach to providers that are used by other classes. For example we don't want to configure partitions on da0 if it is part of gmirror, what we really want is partitions on mirror/foo.
During regular work it works like this: if provider is open for writing a class receives the spoiled event from GEOM and detaches, once provider is closed the taste event is send again and class can rediscover its metadata if it is still there. This doesn't work that way when new class arrives, because GEOM gives all existing providers for it to taste, also those open for writing. Classes have to decided on their own if they want to deal with such providers (eg. geom_dev) or not (classes modified by this commit).
Reported by: des, Oliver Lehmann <lehmann@ans-netz.de> Tested by: des, Oliver Lehmann <lehmann@ans-netz.de> Discussed with: phk, marcel Reviewed by: marcel MFC after: 3 days
|
194433 |
18-Jun-2009 |
ivoras |
Fix tabs, slightly improve comments.
Approved by: gnn (mentor) (original) Noticed by: stas
|
194092 |
13-Jun-2009 |
ivoras |
Add support for labels derived from GPT metadata.
Approved by: gnn (mentor) Reviewed by: pjd PR: 128398 Submitted by: Marius Nuennerich < marius at nuenneri.ch >
|
193131 |
30-May-2009 |
dougb |
Crank the debug level necessary to display the "Label foo is removed" and "Label for provider ..." messages up from 0 to 1.
|
190423 |
25-Mar-2009 |
ivoras |
Create GEOM labels from UFS IDs, e.g. /dev/ufsid/49c97b1faa2adc43. UFS IDs are always present and can be used to identify file systems (useful if hardware devices move often).
Actually-by: pjd Approved by: gnn (mentor)
|
188492 |
11-Feb-2009 |
lulf |
- Use the correct argument when determining the buffer size.
PR: kern/131575 MFC after: 2 days
|
173677 |
16-Nov-2007 |
maxim |
o s/resiserfs_sb/reiserfs_sb/.
Submitted by: Ighighi
|
162834 |
30-Sep-2006 |
pjd |
Remove trailing spaces.
|
162357 |
16-Sep-2006 |
pjd |
Fix detecting of UFS1 label when mediasize%fragsize != 0.
Submitted by: Stanislav Sedov PR: kern/84637 MFC after: 1 week
|
161246 |
12-Aug-2006 |
pjd |
Handle MSDOS file systems properly. Before the change file systems created on Windows XP (and others maybe) were not detected. We detected only those created with newfs_msdos(8).
Submitted by: Tobias Reifenberger <treif@mayn.de> style(9)ified by: pjd
|
161245 |
12-Aug-2006 |
pjd |
Verify if a label doesn't point to the parent directory.
|
156299 |
04-Mar-2006 |
pjd |
We need to check if file system size is equal to provider's size, because sysinstall(8) still bogusly puts first partition at offset 0 instead of 16, so glabel/ufs will find file system on slice instead of partition.
Before sysinstall is fixed, we must keep this code, which means that we wont't be able to detect UFS file systems created with 'newfs -s ...'.
PS. bsdlabel(8) creates partitions properly.
MFC after: 3 days
|
155803 |
18-Feb-2006 |
pjd |
Inform when label disappears.
MFC after: 3 days
|
155801 |
18-Feb-2006 |
pjd |
- Do not depend on fact that file system covers entire provider. It won't work for file systems created with -s option. Use better file system verfication. - Add myself to the copyright.
MFC after: 3 days
|
155798 |
18-Feb-2006 |
pjd |
This function returns nothing.
|
155797 |
18-Feb-2006 |
pjd |
If provider's sector size prevents reading SBLOCKSIZE bytes return immediatelly.
|
155174 |
01-Feb-2006 |
pjd |
Remove trailing spaces.
|
154513 |
18-Jan-2006 |
pjd |
Style cleanups.
X-MFC-after: Already MFCed to RELENG_6 by accident.
|
152971 |
30-Nov-2005 |
sobomax |
Don't pass error value pointer to g_read_data(9) at all if we don't have any use of it.
Suggested by: pjd
|
152967 |
30-Nov-2005 |
sobomax |
Check for g_read_data(9) errors properly:
o The only indication of error condition is NULL value returned by the function;
o value pointed to by error argument is undefined in the case when operation completes successfully.
Discussed with: phk
|
152922 |
29-Nov-2005 |
pjd |
We do nothing with returned error value, so just remove it.
|
152913 |
29-Nov-2005 |
sobomax |
Check value returned by g_read_data(9), otherwise we can end in panic(9) if read error happens.
MFC after: 1 week
|
151684 |
26-Oct-2005 |
takawata |
Add checking for File record magic.
|
149538 |
28-Aug-2005 |
pjd |
Verify length of the data to read as well.
|
149495 |
26-Aug-2005 |
pjd |
Verify offset before reading.
MFC after: 2 days
|
149492 |
26-Aug-2005 |
takawata |
Add NTFS labeling function.
Reviewed by:pjd
|
149395 |
23-Aug-2005 |
pjd |
Verify if we can actually read the data at given offset.
Reported by: Martin <nakal@nurfuerspam.de>
|
149339 |
20-Aug-2005 |
pjd |
Back-out the change from revision 1.14 and allow for '/' in labels again.
Convinced by: green, Gavin Atkinson, dougb, gordon MFC after: 1 day
|
148979 |
12-Aug-2005 |
pjd |
Provide more complete "How to add a new file system to glabel." list.
MFC after: 1 week
|
148978 |
12-Aug-2005 |
pjd |
Add code for Ext2FS and ReiserFS labels recognition.
Submitted by: Stanislav Sedov <stas@310.ru> PR: kern/84638 MFC after: 1 week
|
148977 |
12-Aug-2005 |
pjd |
Avoid creating directories in devfs by changing all '/' in labels to '_'.
Idea from: Stanislav Sedov <stas@310.ru> MFC after: 3 days
|
145306 |
19-Apr-2005 |
wollman |
The size of a filesystem may be less than the size of the provider it resides on. Fix the special case of the filesystem fragment size not evenly dividing the size of the provider. Fixing the general case probably requires better superblock validation (left as an exercise to the reader).
|
142727 |
27-Feb-2005 |
pjd |
- Add md_provsize field to metadata, which will help with shared-last-sector problem. After this change, even if there is more than one provider with the same last sector, the proper one will be chosen based on its size. It still doesn't fix the 'c' partition problem (when da0s1 can be confused with da0s1c) and situation when 'a' partition starts at offset 0 (then da0s1a can be confused with da0s1 and da0s1c). One can use '-h' option there, when creating device or avoid sharing last sector. Actually, when providers share the same last sector and their size is equal, they provide exactly the same data, so the name (da0s1, da0s1a, da0s1c) isn't important at all. - Provide backward compatibility. - Update copyright's year.
MFC after: 1 week
|
141513 |
08-Feb-2005 |
des |
merge from geom_vol_ffs.c rev 1.14 (avoid unaligned I/O requests)
|
136503 |
14-Oct-2004 |
pjd |
Only allow for unloading when there are no geoms in LABEL GEOM class. We have to use our own destroy_geom method, because default one, which is a part of geom_slice is broken. MT5 candidate.
PR: kern/72467 Submitted by: Vladimir Novoseltsev
|
135522 |
20-Sep-2004 |
pjd |
This is not needed anymore, it is forced in GEOM now. Actually, it can even cause some problems, because GEOM requires sectorsize to be more than 0 on first access, not on provider creation, so we can skip valid providers by doing this check here.
Reported by: Divacky Roman <xdivac02@stud.fit.vutbr.cz> Sven Willenberger <sven@dmv.com>
|
134528 |
30-Aug-2004 |
pjd |
Allow to configure debug level from /boot/loader.conf.
|
134344 |
26-Aug-2004 |
pjd |
Skip providers with not defined sector size.
Reported by: kuriyama
|
133371 |
09-Aug-2004 |
pjd |
Do not use g_wither_geom(9). I doesn't work in the way which is expected here anymore (after g_wither_washer() was introduced), i.e. geom and consumer will not be immediately destroyed if possible.
|
133318 |
08-Aug-2004 |
phk |
Tag all geom classes in the tree with a version number.
|
132098 |
13-Jul-2004 |
pjd |
Remove unused macro.
|
132097 |
13-Jul-2004 |
pjd |
Decrease log level of one debug message, so there is no hole (level 2 wasn't used at all).
|
131718 |
06-Jul-2004 |
pjd |
Add missing argument.
|
131716 |
06-Jul-2004 |
pjd |
Properly free resources if g_access() fails.
|
131649 |
05-Jul-2004 |
pjd |
- Add 'stop' command, which works just like 'destroy' command, but sounds less dangerous. - Update manual pages and extend examples. - Bump versions.
|
131476 |
02-Jul-2004 |
pjd |
Introduce GEOM_LABEL class. This class is used for detecting volume labels on file systems: UFS, MSDOSFS (FAT12, FAT16, FAT32) and ISO9660. It also provide native labelization (there is no need for file system).
g_label_ufs.c is based on geom_vol_ffs from Gordon Tetlow. g_label_msdos.c and g_label_iso9660.c are probably hacks, I just found where volume labels are stored and I use those offsets here, but with this class it should be easy to do it as it should be done by someone who know how. Implementing volume labels detection for other file systems also should be trivial.
New providers are created in those directories: /dev/ufs/ (UFS1, UFS2) /dev/msdosfs/ (FAT12, FAT16, FAT32) /dev/iso9660/ (ISO9660) /dev/label/ (native labels, configured with glabel(8))
Manual page cleanups and some comments inside were submitted by Simon L. Nielsen, who was, as always, very helpful. Thanks!
|