For all intents and purposes nearly all 8 bit image formats are encoded in sRGB... so you need to run your conversion function, or better tag the format as SRGB when you create the texture and get the conversion on texture samping for 'free' (also note that these days then most filtering (linear, anisotropic) is done in linear color space on the texture filtering hardware, something that you can't easily get if you manually call GammaToLinear, unless you manually do filtering as well... e.g. take multiple samples, convert to linear and then manually filter)
Also note that most normal maps you should not convert, as mostly they are encoded as if they were linear. Similar for other purpose maps say AO, or specular or roughness.
Also, if you are not 100% sure... a good and simple test is to make a texture that where each line alternates between black and white... then draw a mid gray solid rect next to it... and if you squint the colors should be identical.
Also take special care to note if your display buffer is sRGB or Linear. That seems to trip up a lot of people. But if your display buffer is sRGB (most common case for people starting) then you will need to convert from LinearToGamma just before outputting the pixel/fragment. (Again you can test this by drawing a manual pattern of rects where each line is black/white and then drawing a 0.5 rect next to it and they should be same intensity. By using 0.0 and 1.0 you basically cut out all sRGB -> Linear conversions so you eliminate that area of 'mistake')