From Second Life Wiki
The Profile Image to be uploaded (thereafter to be referred to as a Texture) needs a Pixel Aspect Ratio of 4:3, which means that the width should be 4 units by comparison with the height, which would be 3 units. So, the image might be 400 x 300 pixels, 640 x 480, 800 x 600 pixels, or 1024 x 768, for example. You may need to use an image editor to crop your image accordingly.
NOTE; if you have a 4x3 screen (e.g., 1024x768) and have previously saved Snapshots from within Second Life to your hard drive without altering the standard proportions given (this would be done in the Snapshot tool by unchecking Constrain Proportions and then changing the pixel measurements for either width or height in isolation), your image will already have the right proportions. There will no need to use an image editor such as Photoshop or GIMP to alter it. If you have a wide-screen display, you'll want to crop the image.
Uploading the Image
To upload the image into Second Life, click File Upload - > Image
Profile Image Picker
To set this texture (image) as the Profile Image, right-click your avatar and select Profile. In the General tab, click on the Profile Image placeholder (blue image with silhouette). The Pick window will appear. You can search for the uploaded texture/image using the search field on this tab. Select the texture and click Select OK.
NOTE: the placeholder image in the Pick window appears squashed in from the sides so that the contents are tall and thin. This does NOT mean that you have to stretch your prospective image in an image editor before uploading it, with the idea of compensating for the narrow/thin squashing effect. Once you select the image, it will appear with normal proportions in the profile. (But if you ever DO need to do this for some other application within Second Life, expand your image laterally so that the contents will appear wide/fat, by multiplying the width measurement by the number 1.33.)