Skip to content

Commit

Permalink
doc: Adding some additional warnings about changing the sector size
Browse files Browse the repository at this point in the history
Adding/clarifying warnings related to changing the sector size.
There are some OS background activities that a user will not have the ability to control and may interrupt the format.
Also adding a suggestion to use live-USB or other bootable systems to mitigate how many background activities may be running since these are less likely to be polling the drive since it is not yet installed and running on anything yet.

[Seagate/ToolBin#16]

Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
  • Loading branch information
vonericsen committed Aug 24, 2023
1 parent 04c392b commit 8e08b6b
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 9 deletions.
10 changes: 8 additions & 2 deletions src/openseachest_util_options.c
Original file line number Diff line number Diff line change
Expand Up @@ -2285,7 +2285,10 @@ void print_Fast_Format_Help(bool shortHelp)
printf("\t\t with multiple logical units or namespaces.\n");
printf("\t\tWARNING: Disable any out-of-band management systems/services/daemons\n");
printf("\t\t before using this option. Interruptions can be caused by these\n");
printf("\t\t and may prevent completion of a sector size change.\n\n");
printf("\t\t and may prevent completion of a sector size change.\n");
printf("\t\tWARNING: It is recommended that this operation is done from a bootable environment\n");
printf("\t\t (Live USB) to reduce the risk of OS background activities running and\n");
printf("\t\t triggering a device reset while reformating the drive.\n\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_DEFAULT, CONSOLE_COLOR_DEFAULT);
}
}
Expand Down Expand Up @@ -2456,7 +2459,10 @@ void print_Set_Sector_Size_Help(bool shortHelp)
printf("\t\t all USB adapters can handle a 4k sector size.\n");
printf("\t\tWARNING: Disable any out-of-band management systems/services/daemons\n");
printf("\t\t before using this option. Interruptions can be caused by these\n");
printf("\t\t and may prevent completion of a sector size change.\n\n");
printf("\t\t and may prevent completion of a sector size change.\n");
printf("\t\tWARNING: It is recommended that this operation is done from a bootable environment\n");
printf("\t\t (Live USB) to reduce the risk of OS background activities running and\n");
printf("\t\t triggering a device reset while reformating the drive.\n\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_DEFAULT, CONSOLE_COLOR_DEFAULT);
}
}
Expand Down
2 changes: 1 addition & 1 deletion subprojects/opensea-transport
17 changes: 14 additions & 3 deletions utils/C/openSeaChest/openSeaChest_Erase.c
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
// Global Variables //
////////////////////////
const char *util_name = "openSeaChest_Erase";
const char *buildVersion = "4.3.4";
const char *buildVersion = "4.3.5";

typedef enum _eSeaChestEraseExitCodes
{
Expand Down Expand Up @@ -1345,6 +1345,11 @@ int32_t main(int argc, char *argv[])
printf("interruption. Do not attempt these operations on multiple devices at the same time\n");
printf("to ensure the best possible outcome. Many controllers/drivers/HBAs cannot handle these\n");
printf("operations running in parallel without issuing a device reset.\n");
printf("Not all background activities can be stopped. Some are managed by the OS and are not\n");
printf("configurable. It is recommended that a format change is done from a live/bootable\n");
printf("environment to reduce the risk of these interuptions. If the OS is unable to complete\n");
printf("certain commands for it's background polling of the device, it may trigger a device\n");
printf("reset and interrupt the format, leaving the drive inoperable if it cannot be recovered.\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_BRIGHT_RED, CONSOLE_COLOR_DEFAULT);
printf("\t\tThere is a risk when performing a low-level format/fast format that may\n");
printf("\t\tmake the drive inoperable if it is reset at any time while it is formatting.\n");
Expand All @@ -1362,7 +1367,10 @@ int32_t main(int argc, char *argv[])
printf("\t\t all USB adapters can handle a 4k sector size.\n");
printf("\t\tWARNING: Disable any out-of-band management systems/services/daemons\n");
printf("\t\t before using this option. Interruptions can be caused by these\n");
printf("\t\t and may prevent completion of a sector size change.\n\n");
printf("\t\t and may prevent completion of a sector size change.\n");
printf("\t\tWARNING: It is recommended that this operation is done from a bootable environment\n");
printf("\t\t (Live USB) to reduce the risk of OS background activities running and\n");
printf("\t\t triggering a device reset while reformating the drive.\n\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_DEFAULT, CONSOLE_COLOR_DEFAULT);
printf("If you wish to cancel this operation, press CTRL-C now to exit the software.\n");
//count down timer must go here
Expand Down Expand Up @@ -2343,7 +2351,10 @@ int32_t main(int argc, char *argv[])
printf("\t\t with multiple logical units or namespaces.\n");
printf("\t\tWARNING: Disable any out-of-band management systems/services/daemons\n");
printf("\t\t before using this option. Interruptions can be caused by these\n");
printf("\t\t and may prevent completion of a sector size change.\n\n");
printf("\t\t and may prevent completion of a sector size change.\n");
printf("\t\tWARNING: It is recommended that this operation is done from a bootable environment\n");
printf("\t\t (Live USB) to reduce the risk of OS background activities running and\n");
printf("\t\t triggering a device reset while reformating the drive.\n\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_DEFAULT, CONSOLE_COLOR_DEFAULT);
}
else
Expand Down
20 changes: 17 additions & 3 deletions utils/C/openSeaChest/openSeaChest_Format.c
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
// Global Variables //
////////////////////////
const char *util_name = "openSeaChest_Format";
const char *buildVersion = "3.0.2";
const char *buildVersion = "3.0.3";

////////////////////////////
// functions to declare //
Expand Down Expand Up @@ -962,6 +962,11 @@ int32_t main(int argc, char *argv[])
printf("interruption. Do not attempt these operations on multiple devices at the same time\n");
printf("to ensure the best possible outcome. Many controllers/drivers/HBAs cannot handle these\n");
printf("operations running in parallel without issuing a device reset.\n");
printf("Not all background activities can be stopped. Some are managed by the OS and are not\n");
printf("configurable. It is recommended that a format change is done from a live/bootable\n");
printf("environment to reduce the risk of these interuptions. If the OS is unable to complete\n");
printf("certain commands for it's background polling of the device, it may trigger a device\n");
printf("reset and interrupt the format, leaving the drive inoperable if it cannot be recovered.\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_BRIGHT_RED, CONSOLE_COLOR_DEFAULT);
printf("\t\tThere is a risk when performing a low-level format/fast format that may\n");
printf("\t\tmake the drive inoperable if it is reset at any time while it is formatting.\n");
Expand All @@ -979,7 +984,10 @@ int32_t main(int argc, char *argv[])
printf("\t\t all USB adapters can handle a 4k sector size.\n");
printf("\t\tWARNING: Disable any out-of-band management systems/services/daemons\n");
printf("\t\t before using this option. Interruptions can be caused by these\n");
printf("\t\t and may prevent completion of a sector size change.\n\n");
printf("\t\t and may prevent completion of a sector size change.\n");
printf("\t\tWARNING: It is recommended that this operation is done from a bootable environment\n");
printf("\t\t (Live USB) to reduce the risk of OS background activities running and\n");
printf("\t\t triggering a device reset while reformating the drive.\n\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_DEFAULT, CONSOLE_COLOR_DEFAULT);
printf("If you wish to cancel this operation, press CTRL-C now to exit the software.\n");
//count down timer must go here
Expand Down Expand Up @@ -1408,6 +1416,9 @@ int32_t main(int argc, char *argv[])
printf("\t\tWARNING: Disable any out-of-band management systems/services/daemons\n");
printf("\t\t before using this option. Interruptions can be caused by these\n");
printf("\t\t and may prevent completion of a sector size change.\n\n");
printf("\t\tWARNING: It is recommended that this operation is done from a bootable environment\n");
printf("\t\t (Live USB) to reduce the risk of OS background activities running and\n");
printf("\t\t triggering a device reset while reformating the drive.\n\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_DEFAULT, CONSOLE_COLOR_DEFAULT);
}
else
Expand Down Expand Up @@ -1504,7 +1515,10 @@ int32_t main(int argc, char *argv[])
printf("\t\t all USB adapters can handle a 4k sector size.\n");
printf("\t\tWARNING: Disable any out-of-band management systems/services/daemons\n");
printf("\t\t before using this option. Interruptions can be caused by these\n");
printf("\t\t and may prevent completion of a sector size change.\n\n");
printf("\t\t and may prevent completion of a sector size change.\n");
printf("\t\tWARNING: It is recommended that this operation is done from a bootable environment\n");
printf("\t\t (Live USB) to reduce the risk of OS background activities running and\n");
printf("\t\t triggering a device reset while reformating the drive.\n\n");
set_Console_Foreground_Background_Colors(CONSOLE_COLOR_DEFAULT, CONSOLE_COLOR_DEFAULT);
}
}
Expand Down

0 comments on commit 8e08b6b

Please sign in to comment.