kernel/fs: Don't store the mount cookie in the KPartition.

Nothing uses it. If needed, it can be retrieved through the volume
(mount) ID.
This commit is contained in:
Augustin Cavalier
2024-12-19 17:17:18 -05:00
parent 46a1eb7da5
commit 74ae79fed9
6 changed files with 1 additions and 45 deletions
-1
View File
@@ -31,7 +31,6 @@ typedef struct partition_data {
uint32 status; uint32 status;
uint32 flags; uint32 flags;
dev_t volume; // [sys] dev_t volume; // [sys]
void *mount_cookie; // [sys]
char *name; // max: B_OS_NAME_LENGTH char *name; // max: B_OS_NAME_LENGTH
char *content_name; // char *content_name; //
char *type; // char *type; //
@@ -125,9 +125,6 @@ public:
void SetVolumeID(dev_t volumeID); void SetVolumeID(dev_t volumeID);
dev_t VolumeID() const; dev_t VolumeID() const;
void SetMountCookie(void *cookie);
void *MountCookie() const;
// Parameters // Parameters
status_t SetParameters(const char *parameters); status_t SetParameters(const char *parameters);
@@ -207,7 +204,6 @@ protected:
void FireTypeChanged(const char *type); void FireTypeChanged(const char *type);
void FireIDChanged(partition_id id); void FireIDChanged(partition_id id);
void FireVolumeIDChanged(dev_t volumeID); void FireVolumeIDChanged(dev_t volumeID);
void FireMountCookieChanged(void *cookie);
void FireParametersChanged(const char *parameters); void FireParametersChanged(const char *parameters);
void FireContentParametersChanged(const char *parameters); void FireContentParametersChanged(const char *parameters);
void FireChildAdded(KPartition *child, int32 index); void FireChildAdded(KPartition *child, int32 index);
@@ -28,7 +28,6 @@ public:
virtual void TypeChanged(KPartition *partition, const char *type); virtual void TypeChanged(KPartition *partition, const char *type);
virtual void IDChanged(KPartition *partition, partition_id id); virtual void IDChanged(KPartition *partition, partition_id id);
virtual void VolumeIDChanged(KPartition *partition, dev_t volumeID); virtual void VolumeIDChanged(KPartition *partition, dev_t volumeID);
virtual void MountCookieChanged(KPartition *partition, void *cookie);
virtual void ParametersChanged(KPartition *partition, virtual void ParametersChanged(KPartition *partition,
const char *parameters); const char *parameters);
virtual void ContentParametersChanged(KPartition *partition, virtual void ContentParametersChanged(KPartition *partition,
@@ -80,7 +80,6 @@ KPartition::KPartition(partition_id id)
fPartitionData.status = B_PARTITION_UNRECOGNIZED; fPartitionData.status = B_PARTITION_UNRECOGNIZED;
fPartitionData.flags = B_PARTITION_BUSY; fPartitionData.flags = B_PARTITION_BUSY;
fPartitionData.volume = -1; fPartitionData.volume = -1;
fPartitionData.mount_cookie = NULL;
fPartitionData.name = NULL; fPartitionData.name = NULL;
fPartitionData.content_name = NULL; fPartitionData.content_name = NULL;
fPartitionData.type = NULL; fPartitionData.type = NULL;
@@ -811,23 +810,6 @@ KPartition::VolumeID() const
} }
void
KPartition::SetMountCookie(void* cookie)
{
if (fPartitionData.mount_cookie != cookie) {
fPartitionData.mount_cookie = cookie;
FireMountCookieChanged(cookie);
}
}
void*
KPartition::MountCookie() const
{
return fPartitionData.mount_cookie;
}
status_t status_t
KPartition::SetParameters(const char* parameters) KPartition::SetParameters(const char* parameters)
{ {
@@ -1537,18 +1519,6 @@ KPartition::FireVolumeIDChanged(dev_t volumeID)
} }
void
KPartition::FireMountCookieChanged(void* cookie)
{
if (fListeners) {
for (ListenerSet::Iterator it = fListeners->Begin();
it != fListeners->End(); ++it) {
(*it)->MountCookieChanged(this, cookie);
}
}
}
void void
KPartition::FireParametersChanged(const char* parameters) KPartition::FireParametersChanged(const char* parameters)
{ {
@@ -86,12 +86,6 @@ KPartitionListener::VolumeIDChanged(KPartition *partition, dev_t volumeID)
{ {
} }
// MountCookieChanged
void
KPartitionListener::MountCookieChanged(KPartition *partition, void *cookie)
{
}
// ParametersChanged // ParametersChanged
void void
KPartitionListener::ParametersChanged(KPartition *partition, KPartitionListener::ParametersChanged(KPartition *partition,
+1 -3
View File
@@ -7672,9 +7672,8 @@ fs_mount(char* path, const char* device, const char* fsName, uint32 flags,
inc_vnode_ref_count(sRoot); inc_vnode_ref_count(sRoot);
} }
// supply the partition (if any) with the mount cookie and mark it mounted // supply the partition (if any) with the mount ID and mark it mounted
if (partition) { if (partition) {
partition->SetMountCookie(mount->volume->private_volume);
partition->SetVolumeID(mount->id); partition->SetVolumeID(mount->id);
// keep a partition reference as long as the partition is mounted // keep a partition reference as long as the partition is mounted
@@ -7917,7 +7916,6 @@ fs_unmount(char* path, dev_t mountID, uint32 flags, bool kernel)
// dereference the partition and mark it unmounted // dereference the partition and mark it unmounted
if (partition) { if (partition) {
partition->SetVolumeID(-1); partition->SetVolumeID(-1);
partition->SetMountCookie(NULL);
if (mount->owns_file_device) if (mount->owns_file_device)
KDiskDeviceManager::Default()->DeleteFileDevice(partition->ID()); KDiskDeviceManager::Default()->DeleteFileDevice(partition->ID());